免责声明;我是React&反应本。我已经下载了一个UI模块,并正在尝试在我的项目中使用它。这就是文件夹结构的样子:
├── myProject
│ ├── README.md
│ └── src
│ └── client
│ └── {actual react-native project}
└── react-native-ui-module
├── node_modules
├── package-lock.json
├── package.json
└── src
我已经在 myProject/src/client/package.json
添加了 react-native-ui-module
,so:
"react-native-ui-module": "file:../../../react-native-ui-module",
从那里,我执行了以下命令:
$ npm install
$ react-native link
我可以在上述步骤之后看到node_modules
中的模块。
我期望将模块这样使用:
import { Button } from 'react-native-ui-module';
但是,我遇到了一个错误,该错误指出Module
React-Native-ui-Module`在急速模块映射中不存在。我已经尝试遵循错误消息的建议,即:
这可能与https://github.com/facebook/reaect-native/issues/4968有关要解决以下内容:
- 清晰的守望者手表:
watchman watch-del-all
。 - 删除
node_modules
文件夹:rm -rf node_modules && npm install
。 - 重置Metro Bundler Cache:
rm -rf /tmp/metro-bundler-cache-*
或npm start -- --reset-cache
。 - 删除急速缓存:
rm -rf /tmp/haste-map-react-native-packager-*
。
我还尝试在导入语句中使用相对和绝对路径。是否有更好的导入和安装模块的方法?我还可以采取哪些其他故障排除步骤来实际使用模块?
也要澄清;这是我购买和手动下载的模块,因此NPMJ无法获得。
考虑到当前情况,您可以做的简短的事情是将UI模块复制到{实际的反应式项目}的node_modules},然后将UI模块可用于您要在导入中使用,这样您甚至不需要将模块添加到软件包中。
正确的方法是在NPM站点中找到此UI模块,并使用命令npm install --save [name-of-the-ui-module]
,然后将UI模块用于您的导入中。
(更新考虑评论bellow)
考虑到您的库不在NPM存储库中,您还可以将此库包含在LIB文件夹中,并像使用其他任何组件一样使用它。
<</p>