React-Native导入文件位于主目录之外

Kev*_*off 7 javascript import node-modules react-native

我正在尝试使用Expo和制作一些组件的演示应用程序react-native。(或者我也可以使用常规React-Native

我的问题是我无法导入演示应用程序之外的文件

这是我的结构
|-- Components/ | |-- libs | |-- node_modules | |-- index.js | |-- package.json | |-- demo/ | | |-- node_modules | | |-- App.js | | |-- package.json

在的内部demo/App.js,我试图从上层目录导入我的组件之一,但是没有运气。所有组件都在./index.js中导出

在的内部App.js,我尝试了: import {MyComponent} from 'Components'import {MyComponent} from '../index'或,import {MyComponent} from '../../Components/'但似乎没有任何作用。

我遇到以下类型的错误 Directory /Users/kevin/web/myprojects/Components/index doesn't exist

我究竟做错了什么 ?

the*_*ram 4

React-native 打包器现在的工作方式是,在创建 JavaScript 包时它只会扫描项目的根目录及下面的根目录,因此很难做到这一点。

基本上,您只需将文件放在目录的根目录下即可。有一些工具可用于将文件从另一个目录同步到根目录下的目录,因此如果您确实需要,可以使用其中一个工具。

有些人正在研究使符号链接与此配合使用的方法。值得注意的是,您可以查看 Callstack 中的 Haul。https://github.com/callstack-io/haul 但这还没有集成到 Expo 中。

  • 如果您有一个 Web 应用程序和一个本机应用程序共享一些通用代码,那么这确实很糟糕。你被迫依赖于相同版本的 React,当其他依赖项出现版本控制问题时,它可能会陷入不可能的绑定。我刚刚被这个咬了。 (3认同)