参数类型 'num?'不能分配给参数类型 'num'.dart(argument_type_not_assignable)

时间:2021-07-04 03:45:47

标签: flutter dart null

enter image description here

我正在使用来自 pub.dev/packages/finance 的 Finance: ^0.1.0 包创建一个贷款计算器。在计算支付的总利息时,我在 c['ipmt'] 处遇到错误。错误是参数类型“num?”无法分配给参数类型 'num'.dart(argument_type_not_assignable)。

请帮忙。

1 个答案:

答案 0 :(得分:0)

您的编译器不知道给定的映射包含一个值。你作为程序员有理由肯定,因为你添加了它,但编译器不够聪明。

这里的教训是在您确定数据的外观时创建一个实际类型。与其使用每次访问时都依赖于正确键入属性的地图,不如创建一个具有这些属性的类。那么你的编译器就会知道在程序的这个时候,这个属性不能为空。