gpt4 book ai didi

flutter - `State`有什么用

转载 作者:IT王子 更新时间:2023-10-29 06:53:39 26 4
gpt4 key购买 nike

我查看了 dart 的泛型文档。

abstract class StringCache {
String getByKey(String key);
void setByKey(String key, String value);
}

abstract class ObjectCache {
Object getByKey(String key);
void setByKey(String key, Object value);
}

上面两个被替换为一个泛型类型T,代码如下

abstract class Cache<T> {
T getByKey(String key);
void setByKey(String key, T value);
}

可以清楚地看到 T 的使用。但不确定状态类在哪里使用

class _CounterState extends State<Counter> {
int _counter = 0;

void _increment() {
setState(() {
_counter++;
});
}

@override
Widget build(BuildContext context) {
return Row(
children: <Widget>[
RaisedButton(
onPressed: _increment,
child: Text('Increment'),
),
Text('Count: $_counter'),
],
);
}
}

最佳答案

T 是一个泛型类型参数,extends StatefulWidget 是对 T 可以设置的类型的约束。

class _CounterState extends State<Counter> {

T 设置为 Counter 类型(必须是 StatefulWidget)。

传递 Counter 作为类型允许您使用

widget.foo

_CounterState 引用 Counter 中的字段 foo,您将获得自动完成和静态类型检查。

关于flutter - `State<T extends StatefulWidget>`有什么用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55155510/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com