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

点赞、收藏 点击控制

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