在我的项目中,我使用以下代码将数据从一个小部件传递到另一个小部件:
Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
TranslatorSignUpStep2(transModel: this._translatorModel),
),
);
然后,通过下面的代码在另一个小部件中检索它:
class TranslatorSignUpStep2 extends StatefulWidget {
final TranslatorModel transModel;
TranslatorSignUpStep2({this.transModel});
@override
_TranslatorSignUpStep2State createState() => _TranslatorSignUpStep2State();
}
问题是,在TranslatorSignUpStep2类中,我想将传入的内容分配transModel
给另一个变量,所以我编写此代码
class _TranslatorSignUpStep2State extends State<TranslatorSignUpStep2> {
TranslatorModel _translatorModel = widget.transModel;
}
但是似乎widget
无法在build方法之外使用,所以我收到错误的说法The instance member 'widget' can't be accessed in an initializer.
。有人知道如何克服这个问题吗?
试试这个代码:
TranslatorSignUpStep2:
class TranslatorSignUpStep2 extends StatefulWidget {
final TranslatorModel transModel;
TranslatorSignUpStep2({this.transModel});
@override
_TranslatorSignUpStep2State createState() => _TranslatorSignUpStep2State(this.transModel);
}
TranslatorSignUpStep2类别:
class _TranslatorSignUpStep2State extends State<TranslatorSignUpStep2> {
_TranslatorSignUpStep2State(TranslatorModel _tempModel ){
this._translatorModel =_tempModel;
};
TranslatorModel _translatorModel ;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句