是否可以使文本小部件有状态,以便在我按下按钮时可以更改文本,而不会使我的类处于有状态? 例子:
data() {
return {
customGroupNames: { "category": "Cat", "dairy": "Dairy" },
headers: [...],
dessserts: [...]
}
}
Test 和 Test2 是字符串。
因此,当我按下按钮时,文本小部件内的值应该会改变。有没有办法在不将我的类更改为有状态的情况下实现这一目标?或者,如果不能,有人可以解释我如何将类更改为有状态,而不会弄乱我的其余代码
答案 0 :(得分:0)
不,你不能,无状态小部件是一个不可变的小部件,不能对状态变化做出反应和重新渲染,你必须使用某种形式的状态管理。
如果您的按钮、文本和数据都在同一个小部件中,那么最好使您的小部件有状态并使用 setState(() {})
更改文本和重新呈现。
您可以使用 Flutter 插件将您的小部件从 Stateless
小部件转换为 StatefulWidget
,该插件会处理所有事情。