ステートフル ウィジェットの作成中に、データをステートフル ウィジェットに渡す推奨される方法を知りたいです。
私が見た2つのスタイルは次のとおりです。
class ServerInfo extends StatefulWidget {
Server _server;
ServerInfo(Server server) {
this._server = server;
}
@override
State<StatefulWidget> createState() => new _ServerInfoState(_server);
}
class _ServerInfoState extends State<ServerInfo> {
Server _server;
_ServerInfoState(Server server) {
this._server = server;
}
}
このメソッドはServerInfo
との両方に値を保持しますが_ServerInfoState
、これは少し無駄に思えます。
他の方法は、次を使用することwidget._server
です。
class ServerInfo extends StatefulWidget {
Server _server;
ServerInfo(Server server) {
this._server = server;
}
@override
State<StatefulWidget> createState() => new _ServerInfoState();
}
class _ServerInfoState extends State<ServerInfo> {
@override
Widget build(BuildContext context) {
widget._server = "10"; // Do something we the server value
return null;
}
}
状態はもはや_ServerInfoSate
ウィジェットではなくウィジェットに保存されるため、これは少し逆のようです。
これに対するベストプラクティスはありますか?