为什么 Boolean State 不会随着 hook 而改变?
Why Boolean State does not change with hook?
如何使用 Hook 切换值?我试过这段代码,但状态从未改变。
代码是:
class ExampleScreen extends HookWidget {
@override
Widget build(BuildContext context) {
var toggleValue = useState(false);
return Scaffold(
body: Checkbox(
value: toggleValue .value,
onChanged: (value) {
toggleValue.value != toggleValue.value;
print("\n toggleValue ${ toggleValue .value}\n");
},
);
}
}
您应该使用从 onChanged 回调返回的值来分配新值。新值不会自动分配给 ValueNotifier.value.
Widget build(BuildContext context) {
var toggleValue = useState(false);
return Scaffold(
body: Checkbox(
value: toggleValue.value,
onChanged: (value) {
toggleValue.value = value!;
print("\n toggleValue $value\n");
},
)
);
}
如何使用 Hook 切换值?我试过这段代码,但状态从未改变。
代码是:
class ExampleScreen extends HookWidget {
@override
Widget build(BuildContext context) {
var toggleValue = useState(false);
return Scaffold(
body: Checkbox(
value: toggleValue .value,
onChanged: (value) {
toggleValue.value != toggleValue.value;
print("\n toggleValue ${ toggleValue .value}\n");
},
);
}
}
您应该使用从 onChanged 回调返回的值来分配新值。新值不会自动分配给 ValueNotifier.value.
Widget build(BuildContext context) {
var toggleValue = useState(false);
return Scaffold(
body: Checkbox(
value: toggleValue.value,
onChanged: (value) {
toggleValue.value = value!;
print("\n toggleValue $value\n");
},
)
);
}