second_controller.dart 1016 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. import 'package:get/get.dart';
  2. import 'package:get_demo/models/good_model.dart';
  3. import 'package:get_demo/pages/home/home_controller.dart';
  4. import 'package:get_demo/pages/second/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.result = Get.arguments;
  27. }
  28. @override
  29. void onClose() {}
  30. }