提交 419f9a10 authored 作者: yueweilu's avatar yueweilu

1、笔记和讨论添加分页记载

2、搜索历史添加分页加载
上级 8555a6c0
...@@ -156,7 +156,7 @@ abstract class LibraryAPI { ...@@ -156,7 +156,7 @@ abstract class LibraryAPI {
'book_id': bookId, 'book_id': bookId,
'chapter_id': chapterId 'chapter_id': chapterId
}, },
showLoading: true // showLoading: true
); );
if (result.data is! Map && result.data['list'] is! List) return []; if (result.data is! Map && result.data['list'] is! List) return [];
return List.generate(result.data['list'].length, (index) { return List.generate(result.data['list'].length, (index) {
...@@ -179,7 +179,7 @@ abstract class LibraryAPI { ...@@ -179,7 +179,7 @@ abstract class LibraryAPI {
'book_id': bookId, 'book_id': bookId,
'chapter_id': chapterId 'chapter_id': chapterId
}, },
showLoading: true, // showLoading: true,
); );
if (result.data is! Map && result.data['list'] is! List) return []; if (result.data is! Map && result.data['list'] is! List) return [];
return List.generate(result.data['list'].length, (index) { return List.generate(result.data['list'].length, (index) {
......
...@@ -51,3 +51,4 @@ part 'discuss_controller.dart'; ...@@ -51,3 +51,4 @@ part 'discuss_controller.dart';
part 'widgets/input_discuss.dart'; part 'widgets/input_discuss.dart';
part 'widgets/item.dart'; part 'widgets/item.dart';
part 'widgets/search_all.dart'; part 'widgets/search_all.dart';
part 'search_all_controller.dart';
...@@ -87,14 +87,19 @@ class _ReadCategoryPageState extends State<ReadCategoryPage> { ...@@ -87,14 +87,19 @@ class _ReadCategoryPageState extends State<ReadCategoryPage> {
], ],
), ),
widget.controller.showSearch? Expanded( widget.controller.showSearch? Expanded(
child: BuildSearchAll( child: CustomPullScrollView(
onTap: (SearchAllModel sModel){ controller: widget.controller.refreshController,
if (widget.onTapSearchItem !=null) { onRefresh: widget.controller.onRefreshSearch,
widget.onTapSearchItem!(sModel); onLoading: widget.controller.onLoadingSearch,
} child: BuildSearchAll(
}, onTap: (SearchAllModel sModel){
searchALlResults: widget.controller.searchALlResults if (widget.onTapSearchItem !=null) {
,)): widget.onTapSearchItem!(sModel);
}
},
searchALlResults: widget.controller.searchALlResults
,),
)):
widget.controller.showSearch?const SizedBox():BuildBook(bookDetailModel: widget.controller.bookDetailModel,), widget.controller.showSearch?const SizedBox():BuildBook(bookDetailModel: widget.controller.bookDetailModel,),
widget.controller.showSearch?const SizedBox():Expanded( widget.controller.showSearch?const SizedBox():Expanded(
child: ListView.builder( child: ListView.builder(
......
...@@ -88,31 +88,41 @@ class _ReadDiscussPageState extends State<ReadDiscussPage> { ...@@ -88,31 +88,41 @@ class _ReadDiscussPageState extends State<ReadDiscussPage> {
], ],
), ),
controller.showSearch? Expanded( controller.showSearch? Expanded(
child: BuildSearchAll( child: CustomPullScrollView(
onTap: (SearchAllModel sModel){ controller: controller.refreshController,
if (widget.onTapSearchItem !=null) { onRefresh: controller.onRefreshSearch,
widget.onTapSearchItem!(sModel); onLoading: controller.onLoadingSearch,
} child: BuildSearchAll(
}, onTap: (SearchAllModel sModel){
searchALlResults: controller.searchALlResults, if (widget.onTapSearchItem !=null) {
widget.onTapSearchItem!(sModel);
}
},
searchALlResults: controller.searchALlResults,
),
)): )):
controller.showSearch?const SizedBox():BuildBook(bookDetailModel: widget.bookDetailModel,), controller.showSearch?const SizedBox():BuildBook(bookDetailModel: widget.bookDetailModel,),
controller.showSearch?const SizedBox():Expanded( controller.showSearch?const SizedBox():Expanded(
child: Stack( child: Stack(
children: [ children: [
ListView.builder( CustomPullScrollView(
itemBuilder: (BuildContext context,int index){ controller: controller.refreshController,
DiscussModel model = controller.discuss[index]; onRefresh: controller.onRefresh,
return BuildDiscuss( onLoading: controller.onLoading,
model: model, child: ListView.builder(
controller: controller, itemBuilder: (BuildContext context,int index){
bookId: widget.bookDetailModel.bookId.toString(), DiscussModel model = controller.discuss[index];
onTapDel: (DiscussModel dModel){ return BuildDiscuss(
controller.delComment(discussModel: dModel); model: model,
}, controller: controller,
); bookId: widget.bookDetailModel.bookId.toString(),
}, onTapDel: (DiscussModel dModel){
itemCount: controller.discuss.length, controller.delComment(discussModel: dModel);
},
);
},
itemCount: controller.discuss.length,
),
), ),
Visibility( Visibility(
visible: controller.showReply, visible: controller.showReply,
......
...@@ -85,57 +85,68 @@ class _ReadNotePageState extends State<ReadNotePage> { ...@@ -85,57 +85,68 @@ class _ReadNotePageState extends State<ReadNotePage> {
):const SizedBox(), ):const SizedBox(),
], ],
), ),
controller.showSearch? Expanded(child: BuildSearchAll( controller.showSearch? Expanded(
onTap: (SearchAllModel sModel){ child: CustomPullScrollView(
if (widget.onTapSearchItem !=null) { controller: controller.refreshController,
widget.onTapSearchItem!(sModel); onRefresh: controller.onRefreshSearch,
} onLoading: controller.onLoadingSearch,
}, child: BuildSearchAll(
searchALlResults: controller.searchALlResults onTap: (SearchAllModel sModel){
)): if (widget.onTapSearchItem !=null) {
widget.onTapSearchItem!(sModel);
}
},
searchALlResults: controller.searchALlResults
),
)):
controller.showSearch?const SizedBox():BuildBook(bookDetailModel: widget.bookDetailModel,), controller.showSearch?const SizedBox():BuildBook(bookDetailModel: widget.bookDetailModel,),
controller.showSearch?const SizedBox():Expanded( controller.showSearch?const SizedBox():Expanded(
child: MediaQuery.removePadding( child: MediaQuery.removePadding(
context: context, context: context,
removeTop: true, removeTop: true,
child:ListView.builder( child:CustomPullScrollView(
itemBuilder: (BuildContext context,int index){ controller: controller.refreshController,
NoteModel model = controller.notes[index]; onRefresh: controller.onRefresh,
// 划线 onLoading: controller.onLoading,
if(model.types == 1){ child: ListView.builder(
return BuildLine( itemBuilder: (BuildContext context,int index){
model: model, NoteModel model = controller.notes[index];
onTapDel: (){ // 划线
controller.delNotes(noteModel: model, bookId:widget.bookDetailModel.bookId.toString()); if(model.types == 1){
}, return BuildLine(
); model: model,
} onTapDel: (){
// 高亮 controller.delNotes(noteModel: model, bookId:widget.bookDetailModel.bookId.toString());
else if(model.types == 2){ },
return BuildHigh( );
model: model, }
onTapDel: (){ // 高亮
controller.delNotes(noteModel: model, bookId:widget.bookDetailModel.bookId.toString()); else if(model.types == 2){
}, return BuildHigh(
); model: model,
} onTapDel: (){
// 笔记 controller.delNotes(noteModel: model, bookId:widget.bookDetailModel.bookId.toString());
else if(model.types == 3){ },
return BuildNote( );
model: model, }
onTapAudio: (MediaModel mediaModel){ // 笔记
controller.playAudio(mediaModel); else if(model.types == 3){
}, return BuildNote(
onTapDel: (){ model: model,
controller.delNotes(noteModel: model, bookId:widget.bookDetailModel.bookId.toString()); onTapAudio: (MediaModel mediaModel){
}, controller.playAudio(mediaModel);
onTapEdit: (){ },
context.pushNamed(Routes.editNote,extra: model,queryParameters: {'book_id':widget.bookDetailModel.bookId}); onTapDel: (){
}, controller.delNotes(noteModel: model, bookId:widget.bookDetailModel.bookId.toString());
); },
} onTapEdit: (){
}, context.pushNamed(Routes.editNote,extra: model,queryParameters: {'book_id':widget.bookDetailModel.bookId});
itemCount: controller.notes.length, },
);
}
},
itemCount: controller.notes.length,
),
), ),
), ),
), ),
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论