【问题标题】:where to write logic for every widget in flutter?在哪里为flutter中的每个小部件编写逻辑?
【发布时间】:2022-06-30 03:00:18
【问题描述】:

我知道这是一个基本问题,但我想知道你们是如何为小部件实现逻辑的。我通常在返回类型上方的 build() 函数中编写逻辑。

【问题讨论】:

  • 您能否提供一些详细信息,您要归档什么?
  • 我正在尝试使用用户给出的值解决一个复杂的数学问题。我想知道将解决逻辑放在哪里@YeasinSheikh Sheikh
  • 你可以检查内联方法

标签: flutter dart widget


【解决方案1】:

你说的逻辑是什么意思??如果您正在谈论添加一些值..那么我们在 build 方法之外使用不同的方法,因为 build 方法将在调用 set state 方法时重建,因此有时可以在 build 内部使用逻辑,但有时我们需要用不同的方法编写逻辑并调用它们..

【讨论】:

  • 我正在尝试使用用户给出的值解决一个复杂的数学问题。我想知道将解决逻辑放在哪里@Ameer Hamza
  • 取决于用户应该输入什么值以及结果会出现什么
  • 你需要创建一个函数,其中的参数将是用户输入,然后你可以在函数完成后解决函数内部的问题它返回期望的结果,它将在类内部但在外部创建构建
【解决方案2】:

每次应用状态发生变化或刷新时,Build 方法都会重新构建 如果您谈论小部件状态 您可以使用 (Getx,Provider) 等状态管理方法将其写入单独的文件中 如果您需要执行 setState ,您可以将其编写在单独的函数中,该方法将更新状态 ...尝试对逻辑使用单独的函数和控制器,这将帮助您提高代码的可扩展性

【讨论】:

【解决方案3】:

如果您在 build 方法中编写逻辑,则意味着每次刷新页面时都会重新构建。 我会建议你遵循 MVVM(Model View ViewModel) 架构,这样所有的业务逻辑都可以写在控制器中(例如:cart_controller.dart)。这样你的文件就和实际的小部件分开了。

【讨论】:

    猜你喜欢
    • 2013-11-10
    • 2016-09-09
    • 1970-01-01
    • 1970-01-01
    • 2021-04-20
    • 2020-07-10
    • 2022-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多