我写了this code来做。我的API可以正常使用,没有问题。当我想打印Product class
字段之一时,我的代码有效,但是当我想将所有json文件解析为Map并将其添加到列表中时,我的代码却无效。这是错误:
Unhandled exception:
NoSuchMethodError: The method 'add' was called on null.
Receiver: null
Tried calling: add(Instance of 'Product')
#0 Object.noSuchMethod (dart:core-patch/object_patch.dart:50:5)
#1 ProductNetwork.fetchProduct
package:dart_project/product.dart:62
<asynchronous suspension>
#2 main
package:dart_project/main.dart:5
<asynchronous suspension>
#3 _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:300:19)
#4 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:171:12)
Exited (255)
我的code有什么问题?
答案 0 :(得分:0)
这不起作用,因为您正在List
的构造函数中请求一个ProductNetwork
,但没有传递一个,因此您的List
将为空,{{1 }}方法不适用于null。实际上,您是在声明add
之后立即对其进行初始化,但是此初始化将被构造方法所覆盖,为null。从构造函数中删除List
或将List
传递给它。
这应该有效:
List
答案 1 :(得分:0)
尝试删除“ ProductNetwork({this.allProducts});”