我正在尝试在我的项目中创建作用域模型,但是出了点问题..
模型类:
class CartonModel extends Model{
bool playerState = false;
bool get getPlayerState => playerState ;
void stateOff(){
playerState = false ;
notifyListeners();
}
void stateOn(){
playerState = true ;
notifyListeners();
}
}
使用范围模型包装的材料应用程序:
ScopedModel<CartonModel>(
model: new CartonModel(),
child: new MaterialApp( // some code )
我在图标按钮上使用ScopedModelDescendant:
ScopedModelDescendant<CartonModel>(
builder: (context, child, CartonModel model) =>
new IconButton(
icon: new Image.asset(imageUrl),
iconSize: dimenRatio * 0.25,
onPressed: () {
Future<void> bottomSheetAwaitClose =
showModalBottomSheet<void>(
context: context,
builder: (BuildContext context) {
return MusicR();
},
);
bottomSheetAwaitClose.then((void value) {
model.stateOff();
});
},
),
),
我已经导入了所有必需的程序包并向ScopedModel <>和ScopedModelDescendant <>提供了类型,但是仍然出现此运行时错误: 找不到正确的ScopedModel。
此代码有什么问题吗?请帮助
答案 0 :(得分:1)
如果在main.dart中声明了CartonModel
类,请将其移至其他文件。
并确保您以'package:<projectname>/cartonmodel.dart'