visual-studio - 未实现的错误(颤振)
问题描述
我对使用 Flutter 进行编码非常陌生,并遵循本课程让我创建有状态小部件。问题是当我这样做时,我得到这个 throw UnimplementedError(); 它应该返回 null。我不知道我做错了什么。
my code:
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatefulWidget {
@override
State<StatefulWidget> createState() {
// TODO: implement createState
throw UnimplementedError();
}
}
class MyAppState extends State<MyApp> {
var questionIndex = 0;
void answerQuestion() {
setState(() {
questionIndex = questionIndex + 1;
});
print(questionIndex);
}
@override
Widget build(BuildContext context) {
var questions = [
"What's your favourite color?",
"What's your favourite animal?",
];
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text(
"My First App",
),
),
body: Column(
children: [
Text(
questions[questionIndex],
),
RaisedButton(
child: Text("Answer 1"),
onPressed: answerQuestion,
),
RaisedButton(
child: Text("Answer 2"),
onPressed: answerQuestion,
),
RaisedButton(
child: Text("Answer 3"),
onPressed: answerQuestion,
)
],
),
),
);
}
}
谢谢,
再见!
解决方案
该createState()
方法包括TODO
注释:
@override
State<StatefulWidget> createState() {
// TODO: implement createState
throw UnimplementedError();
}
这条评论是一个善意的提醒,我们还有一些事情要做。
然而,这throw UnimplementedError()
使得提醒不太友好,迫使我们完成我们的TODO
任务并删除该UnimplementedError()
行以使其工作:
MyAppState createState() => MyAppState();
推荐阅读
- vuejs3 - 如何使响应的值传递给 app.provide 方法
- java - Android AlertDialog 将按钮对齐到底部不起作用
- azure-application-insights - Log Analytics 查询忽略 ysplit
- swift - 为什么 Swift 运算符重载需要是类型方法?
- python - 应该在 Python 包的模块中还是在导入 Python 包的模块的模块中记录异常?
- docker - 如何从另一个 docker 网络访问 docker 网络(单向访问)
- azure - Get-AzureADGroup 和 Get-AzureADMSGroup 命令的结果缺少 CommonName 属性
- html - 如何创建第二个隐藏表
- c++ - c++读取文件两列
- typescript - 如何使用 Vue3 和 Vuex4 和 TypeScript 设置商店模块?