second_controller.dart 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. import 'package:get/get.dart';
  2. import 'package:get_demo/models/good_model.dart';
  3. import 'package:get_demo/modules/home/controllers/home_controller.dart';
  4. import 'package:get_demo/modules/second/states/second_state.dart';
  5. class SecondController extends GetxController {
  6. SecondState state = SecondState();
  7. ///获取home页面的controller
  8. final controllerP = Get.find<HomeController>();
  9. ///如果home的存储收藏的likeList里的实例的sId包含了当前实例的sId,返回true
  10. bool isLike(Result result) {
  11. return controllerP.state.likeList
  12. .any((element) => element.sId == result.sId);
  13. }
  14. ///把当前实例存储到likeList里
  15. addLike(Result result) {
  16. controllerP.state.likeList.add(result);
  17. }
  18. ///从likeList移除当前实例
  19. removeLike(Result result) {
  20. controllerP.state.likeList.remove(result);
  21. }
  22. @override
  23. void onInit() {
  24. super.onInit();
  25. ///接收第一页传过来的实例,赋值给Detail
  26. state.Detail = Get.arguments;
  27. }
  28. @override
  29. void onClose() {}
  30. }