运行空Map时返回Map.length的值



所以,我写了一些代码,遇到了一个不寻常的问题。我正在使用飞镖进行颤振,代码看起来有点像这样:

class Cart {
Map<String, String> _item;
void itemCount()
{
var count =_item.length;
print(count);
}
}
void main()
{
Cart cart =Cart();
cart.itemCount();
}

我在飞镖键盘上尝试过这个代码,我得到了错误:

类型错误:C.JSNull_methods.get$length不是函数错误:类型错误:C.JSNull_methods.get$length是函数

我正在寻找为什么当Map为空时长度函数不起作用,但如果Map不是NUll,则长度函数可以正常工作。

您必须创建一个映射对象。您只是声明map,而不是初始化,这就是您面临此错误的原因。

按以下方式更改声明行。

Map<String, String> _item = Map();

最新更新