我创建了一个React Native组件,该组件具有自己的package.json
文件位于另一个文件夹中,我想在另一个项目中使用它MyComponent
位于Workspace/MyComponent
中,并且作为package.json
中的一些依赖项
"dependencies": {
"react-navigation": "^1.0.0-beta.11"
},
"peerDependencies": {
"react": "16.0.0-alpha.12",
"react-native": "0.45.1"
},
"devDependencies": {
"react": "16.0.0-alpha.12",
"react-native": "0.45.1"
}
我目前正在开发
MyComponent
,所以我在仓库中运行了npm install
,其中有一个node_modules
文件夹。我已经使用
MyComponent
将MyApp
与位于Workspace/MyApp
中的npm link
链接了虽然,当我运行
MyApp
并尝试使用MyComponent
时,它抱怨重复的声明,因为react
和MyComponent
都在MyApp
中,并且它们已链接。如果我从
node_modules
删除MyComponent
文件夹,则react-navigation
抱怨react
未定义。在ReactJS世界中,例如webpack允许使用首选的node_modules文件夹设置根目录,这很好。
module.exports = {
...
resolve: {
root: path.resolve(__dirname, 'node_modules'),
}
...
}
我希望做类似的事情,所以我没有重复的模块,并且可以在本地
MyComponent
中调试MyApp
,而无需为每个更改重新安装MyComponent
。我实现此目标的最佳方法是什么?谢谢
最佳答案
我找到了解决问题的方法,它称为whackage
https://github.com/FormidableLabs/whackage
关于javascript - 什么是创建单独的npm模块并在本地使用它们的正确方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44571205/