提交 14b30a60 authored 作者: yueweilu's avatar yueweilu

点赞、收藏 点击控制

上级 35e6490f
...@@ -22,6 +22,9 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt ...@@ -22,6 +22,9 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
// 图书 // 图书
BookDetailModel bookDetails = BookDetailModel(); BookDetailModel bookDetails = BookDetailModel();
// 是否能点击
bool canTap = true;
@override @override
void onInit() { void onInit() {
...@@ -147,7 +150,7 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt ...@@ -147,7 +150,7 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
update(); update();
} }
/// 收藏 与 取消收藏 /// 收藏 与 取消收藏
void love({ Future<void> love({
required String bookId, required String bookId,
required num isCollection required num isCollection
}) async { }) async {
...@@ -160,8 +163,9 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt ...@@ -160,8 +163,9 @@ class BookDetailController extends GetxController with GetSingleTickerProviderSt
bool result = await CommonAPI.love( bool result = await CommonAPI.love(
bookId: bookId, love: isCollection.toString()); bookId: bookId, love: isCollection.toString());
if (result) { if (result) {
getBookDetails(); bookDetails.isCollection = isCollection;
} }
update();
} }
// 获取当前的章节id // 获取当前的章节id
......
...@@ -37,8 +37,12 @@ class _BookDetailPageState extends State<BookDetailPage> with SingleTickerProvid ...@@ -37,8 +37,12 @@ class _BookDetailPageState extends State<BookDetailPage> with SingleTickerProvid
icon: Image.asset( icon: Image.asset(
controller.bookDetails.isCollection == 0? 'assets/images/unlove.png':'assets/images/love.png', controller.bookDetails.isCollection == 0? 'assets/images/unlove.png':'assets/images/love.png',
), ),
onPressed: () { onPressed: () async {
controller.love(bookId: controller.bookDetails.bookId.toString(), isCollection: controller.bookDetails.isCollection!); if(controller.canTap == true) {
controller.canTap = false;
await controller.love(bookId: controller.bookDetails.bookId.toString(), isCollection: controller.bookDetails.isCollection!);
controller.canTap = true;
}
}, },
), ),
], ],
......
...@@ -52,6 +52,9 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{ ...@@ -52,6 +52,9 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
bool _show = false; bool _show = false;
late UModel _getModel; late UModel _getModel;
// 是否可点击收藏
bool canTap = true;
bool get show => _show; bool get show => _show;
void setShow(bool value) { void setShow(bool value) {
...@@ -233,7 +236,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{ ...@@ -233,7 +236,7 @@ class LibraryController extends GetxController with GetTickerProviderStateMixin{
} }
/// 收藏 与 取消收藏 /// 收藏 与 取消收藏
void love({ Future<void> love({
required CourseModel model required CourseModel model
}) async { }) async {
......
...@@ -37,9 +37,14 @@ class _LibraryContentPageState extends State<LibraryContentPage> with AutomaticK ...@@ -37,9 +37,14 @@ class _LibraryContentPageState extends State<LibraryContentPage> with AutomaticK
onTap: (){ onTap: (){
context.pushNamed(Routes.bookDetail,queryParameters: {'book_id':model.bookId.toString()}); context.pushNamed(Routes.bookDetail,queryParameters: {'book_id':model.bookId.toString()});
}, },
child: LibraryCell(model: model,onTap: (){ child: LibraryCell(model: model,onTap: () async{
if(UserStore.to.isLogin){ if(UserStore.to.isLogin){
widget.controller.love(model: model); if(widget.controller.canTap == true){
widget.controller.canTap = false;
await widget.controller.love(model: model);
widget.controller.canTap = true;
}
} }
else{ else{
context.pushNamed(Routes.login); context.pushNamed(Routes.login);
......
...@@ -35,6 +35,9 @@ class DiscussController extends GetxController { ...@@ -35,6 +35,9 @@ class DiscussController extends GetxController {
// 搜全文 // 搜全文
List<SearchAllModel> searchALlResults = []; List<SearchAllModel> searchALlResults = [];
// 是否能点击
bool canTap = true;
@override @override
void onReady() { void onReady() {
......
...@@ -23,6 +23,7 @@ class UserDiscussDesController extends GetxController { ...@@ -23,6 +23,7 @@ class UserDiscussDesController extends GetxController {
// 当前要回复父级的模型 // 当前要回复父级的模型
late DiscussModel fatherDiscussModel; late DiscussModel fatherDiscussModel;
bool canTap= true;
@override @override
void onReady() { void onReady() {
......
...@@ -188,8 +188,16 @@ class _BuildDiscussState extends State<BuildDiscuss> { ...@@ -188,8 +188,16 @@ class _BuildDiscussState extends State<BuildDiscuss> {
children: [ children: [
GestureDetector( GestureDetector(
onTap: () async{ onTap: () async{
widget.controller?.commentLove(discussModel: model); if (widget.controller?.canTap == true) {
widget.userDiscussDesController?.commentLove(discussModel: model); widget.controller?.canTap = false;
await widget.controller?.commentLove(discussModel: model);
widget.controller?.canTap = true;
}
if (widget.userDiscussDesController?.canTap == true) {
widget.userDiscussDesController?.canTap = false;
await widget.userDiscussDesController?.commentLove(discussModel: model);
widget.userDiscussDesController?.canTap = true;
}
}, },
child: SizedBox( child: SizedBox(
height: 20.w, height: 20.w,
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论