2

我正在尝试让我当前的 Flutter 应用程序在网络上运行。我打电话flutter create .了,但如果我尝试在 Chrome 中运行它,我会收到大约 10000 条错误消息提示,这些消息看起来像这样:

尝试删除“外部”关键字或添加 JS 互操作注释。外部 ffi.Pointer<OBX_id_array> 移除;^

../../flutter/.pub-cache/hosted/pub.dartlang.org/objectbox-1.1.0/lib/src/native/bindings/objectbox-c.dart:6289:41:错误:只有JS互操作成员可能是“外部的”。尝试删除“外部”关键字或添加 JS 互操作注释。外部 ffi.Pointer<OBX_sync_change> 列表;^

../../flutter/.pub-cache/hosted/pub.dartlang.org/objectbox-1.1.0/lib/src/native/bindings/objectbox-c.dart:6292:16:错误:只有JS互操作成员可能是“外部的”。尝试删除“外部”关键字或添加 JS 互操作注释。外部整数计数;^

无法编译应用程序。

我试着用谷歌搜索它,但我找不到任何关于它的东西。有谁知道这是关于什么以及我如何适应这个?

4

2 回答 2

3

在此处重新发布来自 GitHub 问题的答案

您无法使用不支持 Web 的包构建您的 Web 应用程序,ObjectBox 尚不支持(您可以跟踪一个问题)。

有时您可能希望在一小部分代码中具有依赖关系,如果它不适用于 web 也没关系,在这种情况下,您可以使用“条件导入”,例如:

import 'myapp/sources-that-use-objectbox.dart' if (dart.library.html) 'myapp/sources-that-dont-use-objectbox.dart';
于 2021-07-21T08:03:29.040 回答
1

就我而言,我不小心使用了网络不支持的“ffi”库。然后我在我的代码中删除了这个库的所有导入,我还从“pubsec.yaml”中删除了这个库。它现在正常启动。

于 2021-08-02T06:57:23.013 回答