尝试导入领域,但出现错误:缺少领域构造函数。你跑"pod install"了吗?(我正在使用窗户)



我正在用react native制作一个移动应用程序。我想使用Realm(mongodb(
所以运行后:

npm install realm

领域被正确地添加到";node_modules";我试着用导入领域

import Realm from "realm";

如果我真的npm启动并测试应用程序,我会收到以下错误消息:

错误:缺少Realm构造函数。你跑了吗;吊舱安装";?请参阅https://realm.io/docs/react-native/latest/#missing-用于故障排除的领域构造函数

我正在使用windows并在安卓设备上测试该应用程序。早些时候互联网上关于此事的问题表明,在我的情况下,不需要这样做;吊舱安装";。

我还尝试了自动链接领域,使用:

react-native link realm

但后来我得到了警告:

warn不赞成调用react本机链接〔packageName〕,而赞成自动链接。它将在下一个主要版本中删除。自动链接文件:https://github.com/react-native-community/cli/blob/master/docs/autolinking.md(节点:26016(警告:正在访问的不存在的属性"padLevels"循环依赖项内的模块导出(使用node --trace-warnings ...显示创建警告的位置(

  1. 这是否意味着自动链接不成功,因为自动链接将在下一个版本中删除?

  2. 你们中有人对我如何在我的react原生项目中成功导入Realm有什么建议吗?

以下是一些依赖版本:

"expo":"44.0.0〃
"领域":"10.14.0〃
"react native":"0.64.3〃;,

添加此包:

npm install realm@hermes

对我有用。

运行此命令:博览会运行:安卓

  • 您必须首先构建项目
  • 请记住,realm只适用于生产环境

以防有人仍在寻找答案

你不能将Realm与Expo Go应用程序一起使用,该应用程序允许的包很少,任何不在列表中的东西都不起作用。因此,您必须安装expo-dev-client,并将其上传到EAS以运行可以使用的开发服务器。需要一些设置,但一旦你管理好了,它的工作原理就像Expo Go应用程序一样。

查看此页面了解如何设置https://reactnative.dev/docs/environment-setup

正如错误消息所示,您需要安装pod文件,realm才能与iOS一起工作。这些是步骤:

  1. 在项目文件夹中运行npm install realm。它将npm包添加到您的react本机项目中
  2. 在您的iOS文件夹(cd ios)(中运行pod install。它获取所有iOS领域库,编译npm包的iOS部分,并创建.xcworkspace
  3. 将导入添加到组件:import Realm from "realm";
  4. 切换回您的项目文件夹并运行您的项目:react-native run-ios

希望这能解决你的问题!

最新更新