【发布时间】:2021-09-29 22:06:53
【问题描述】:
我在按下按钮时遇到此错误(编译时没有错误) 它在 ()=> answerQuestions(answer['score'])
处显示错误匿名函数出了点问题,但我无法理解
The following NoSuchMethodError was thrown while handling a gesture: Closure call with mismatched arguments: function '_MyAppState.build.<anonymous closure>' Receiver: Closure: () => (int) => void Tried calling: '_MyAppState.build.<anonymous closure>(8)' Found: '_MyAppState.build.<anonymous closure>() => (int) => void'
import 'package:flutter/material.dart';
import './question.dart';
import './answer.dart';
class Quiz extends StatelessWidget {
final List<Map<String, Object>> questions;
final int questionIndex;
final Function answerQuestions;
Quiz({
required this.questions,
required this.answerQuestions,
required this.questionIndex,
});
@override
Widget build(BuildContext context) {
return Column(
children: [
Question(
questions[questionIndex]['questionText'] as String,
),
...(questions[questionIndex]['answers'] as List<Map<String, Object>>).map((answer) {
return Answer(() => answerQuestions(answer['score']), answer['text'] as String);
}).toList()
],
);
}
}
【问题讨论】: