使用Lerna和React Native?

sam*_*cos 11 npm react-native lerna

是否可以使用Lerna(lernajs.io)和React Native?我正在尝试使用以下结构创建新项目:

MyApp
  packages
    myapp-core
    myapp-mobile
    myapp-web
Run Code Online (Sandbox Code Playgroud)

lerna bootstrap似乎没有任何问题同coreweb,但mobile(这是一个阵营本地项目)拒绝找到myapp-core模块.

我记得npm link在React Native中存在一些问题.是什么导致了这个问题?这个功能最终会存在吗?

sam*_*cos 8

它看起来像react-native: 0.40.0,lerna按预期工作.我创建了一个最小的演示应用程序,它使用一个shared包来更改React和React Native应用程序的背景颜色,以便感兴趣的人:

https://github.com/samcorcos/learna-react-native

重现步骤:

  1. 克隆回购并cd进入
  2. npm install
  3. ./node_modules/.bin/lerna bootstrap

然后你可以运行每个应用程序(npm start为了反应,react-native run-ios为本机做出反应),你会看到背景根据共享仓库的输入变为红色.添加新软件包时,请确保将新软件包添加到每个相关package.json文件中,就像我已添加shared到Web和移动项目中一样.

请注意,此项目不利用Lerna的--independent版本控制系统.

  • 你有什么办法让这个符号链接"共享"在打包器中工作吗?我不明白当打包机不支持它时它的工作原理(https://github.com/facebook/react-native/issues/637) (2认同)
  • 我切换到Haul https://github.com/callstack-io/haul并且运行良好 (2认同)