我对这种情况有疑问。你能帮助我吗 ?我正在收到此错误消息。
发生异常。我想在列表中保存一个东西,但是显示:
处理手势时抛出以下NoSuchMethodError: 方法“ salvar”在null上被调用。 接收者:null 尝试调用:salvar(“ Tarefa”的实例)
代码:
class TarefaScreen extends StatefulWidget { @override _TarefaScreenState createState() => _TarefaScreenState(); } class _TarefaScreenState extends State<TarefaScreen> { final _formKey = GlobalKey<FormState>(); TarefaService _tarefaService; String _titulo; String _descricao; DateTime _dataHora; @override void initState() { super.initState(); } @override void dispose() { super.dispose(); } _save() { if (_formKey.currentState.validate()) { _formKey.currentState.save(); Tarefa _tarefa = Tarefa( titulo: this._titulo, descricao: this._descricao, dataHora: this._dataHora); this._tarefaService.salvar(_tarefa).then((value) { showInfo("Tarefa adicionada"); Navigator.of(context).pop(); } ); } } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text("Adicionar Tarefa") , ), body: Form( key: _formKey, child: ListView( shrinkWrap: true, children: <Widget>[... Padding( padding: const EdgeInsets.only(top: 30, left: 10, right: 10, bottom: 5), child: RaisedButton( child: Text("Enviar"), onPressed: () { this._save(); }, ), ), ], ), ), ); } }
而且我在这里定义addItem;
class TarefaService { final TarefaStore tarefaStore; TarefaService(this.tarefaStore); Future<List<Tarefa>> buscarTarefas() { return Future.value(tarefaStore.tarefas); } Future<Tarefa> salvar(Tarefa atividade){ tarefaStore.adicionarTarefa(atividade); return Future.value(atividade); } void dispose(){ } }
[请帮助我
我对这种情况有疑问。你能帮助我吗 ?我正在接受此错误消息。发生异常。我想在列表中保存一个东西,但显示:抛出以下NoSuchMethodError ...
您正在尝试在未实例化的对象上调用方法,因此其在null
中的this._tarefaService.salvar(_tarefa)
。您需要实例化_tarefaService
。您可以在init()