[英]ib/main.dart:49:24: Error: The operator '[]' isn't defined for the class 'Set<Map<String, Object>>'
import 'package:flutter/material.dart';
import './question.dart';
import './answer.dart';
void main() {
runApp(MyFirstApp());
}
class MyFirstApp extends StatefulWidget {
@override
State<StatefulWidget> createState() {
// TODO: implement createState
return _MyFirstAppState();
}
}
class _MyFirstAppState extends State<MyFirstApp> {
var _questionIndex = 0;
void _ansButtonPress() {
setState(() {
_questionIndex = _questionIndex + 1;
});
}
var questions = [
{
'questionText': 'What is your favorate Colour',
'answers': ['red', 'balck ', 'yellow', 'blue']
},
{
'questionText': 'What is your favorate Animal',
"answers": ['Lion', 'Chettah ', 'Leopard', 'Cat']
},
{
'questionText': 'What is your favorate Movie',
'answers': ['hai', 'hello ', 'hoe', 'are you']
}
];
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('My first app '),
),
body: Column(
children: [
Question(
questions[_questionIndex]['questionText'],
),
Answer(_ansButtonPress),
Answer(_ansButtonPress),
Answer(_ansButtonPress),
],
),
),
);
}
}
終端顯示這樣
lib/main.dart:49:24:錯誤:未為 class 'Set<Map<String, Object>>' 定義運算符“[]”。 - 'Set' 來自 'dart:core'。 - “地圖”來自“飛鏢:核心”。 - “對象”來自“飛鏢:核心”。 嘗試將運算符更正為現有運算符,或定義“[]”運算符。 問題[_questionIndex]['questionText'], ^ 未能 package /Users/j3rry01/Documents/Flutter Lab/flutter basics /new_flutter. 命令 PhaseScriptExecution 失敗,退出代碼為非零注釋:使用新的構建系統注釋:計划注釋:構建准備完成注釋:並行構建目標警告:簽名和功能的功能可能不正確,因為其權利使用占位符團隊 ID。 為了解決這個問題,select 開發團隊在 Runner 編輯器中。 (在項目“Runner”的目標“Runner”中)
我是初學者,對 dart 概念不太了解,我的 POV 上沒有看到任何錯誤
從錯誤消息看來, questions
變量被視為Set
而不是List
。 嘗試像這樣顯式設置其類型:
List<Map<String, dynamic>> questions = [
{
'questionText': 'What is your favorate Colour',
'answers': ['red', 'balck ', 'yellow', 'blue']
},
{
'questionText': 'What is your favorate Animal',
"answers": ['Lion', 'Chettah ', 'Leopard', 'Cat']
},
{
'questionText': 'What is your favorate Movie',
'answers': ['hai', 'hello ', 'hoe', 'are you']
}
];
此外,如果您不打算更改questions
變量的值,最好將其聲明為final
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.