Dart:NoSuchMethodError - 在 null 上找不到"h"的方法



我正在使用Flutter Web,当访问FutureBuilder时,我会得到NoSuchMethodError-找不到方法"h〃;在null上当检查页面时,我看到以下错误:

core_patch.dart:195 Uncaught TypeError: Cannot read properties of undefined (reading 'h')
at Object.bax (VM5 main.dart.js:25360:16)
at VM5 main.dart.js:45250:25
at aWT.a (VM5 main.dart.js:3607:62)
at aWT.$2 (VM5 main.dart.js:39703:14)
at aVB.$1 (VM5 main.dart.js:39697:21)
at a8Y.nJ (VM5 main.dart.js:40765:32)
at aN8.$0 (VM5 main.dart.js:40122:11)
at Object.Ds (VM5 main.dart.js:3740:40)
at ax.tk (VM5 main.dart.js:40054:3)
at a3F.dm (VM5 main.dart.js:39692:8)

这看起来像是Dart js的一个错误。我已经将我的flutter版本更新到2.10,但之前我也有同样的错误,只是不是";h〃;我得到了";i〃;(NoSuchMethodError-未找到方法"i"(

p.S.我只在生产(发布(构建中遇到这个错误,使用调试构建一切都很好。

代码段

FutureBuilder(
future: AlgoliaService().getEmployees(searchQuery),
builder: (BuildContext context, 
AsyncSnapshot<AlgoliaQuerySnapshot> snapshot) {
if (snapshot.hasError) {
return Text("Error:  ${snapshot.error}"); // Error happens here
}

if (snapshot.connectionState == ConnectionState.waiting) {
return Center(child: CircularProgressIndicator(),);}

我遇到了同样的问题。

如果有人正在寻找即时修复,对我来说有效的是强制使用1.0.2依赖项,而不是1.0.4:

dependencies:
algolia: '1.0.2'

这是一个悬而未决的问题。

您必须在FutureBuilder的builder方法中添加类似snapshot.hasData、snapshot.has Error的检查。因为一开始,FutureBuilder上的快照将始终为null,而在执行future之后,它将在快照中返回值。查看此页面,这里有一个FutureBuilder 的可运行示例

最新更新