【发布时间】:2020-11-12 21:29:35
【问题描述】:
我刚开始学习 Flutter,并且正在学习 Udemy 课程“Flutter & Dart - The Complete Guide”。在那门课程中,有一节是关于构建使用提供程序的购物应用程序的。在该应用程序的一个实例中,用户在 Dismissible 小部件的帮助下滑动以从购物车页面(或屏幕/路线)中删除产品,他使用提供程序类中的一个函数(该函数采用产品 ID)来删除购物车中的商品。
这是我不明白的事情。 Dismissible 小部件通过 onDismissed 属性(在滑动后触发)中的此代码连接到提供程序:
Provider.of<Cart>(context, listen: false).removeItem(productId);
这一切都像这样工作得很好。但是,如果您删除了 listen 参数(因此将其变为默认状态,即 true),那么 Dismiss animation 仍然会发生,但 removeItem() 方法不会t 工作,并且购物车仍然保持不变。
为什么会这样?
【问题讨论】:
-
查看此链接并告诉我它有帮助! stackoverflow.com/questions/58584334/…
-
@QuestionableCoder 这不完全是我的问题。我不是在问是否有不同寻常的重建。我在问代码不听就不能工作:假。
标签: flutter dart flutter-dependencies