NPM 还是纱线?启动 React Native 项目和管理包的标准做法是什么?

NPM or Yarn? What is the standard practice of starting React Native projects and managing packages?

当如下 starting a new React Native project 时,它使用 yarn 进行设置,因为它会创建一个 yarn.lock 文件。

react-native init myProjectName

同时,许多公共库假设正在使用 NPM,例如 this one:

npm install --save react-native-navigation

现在在网上阅读了很多关于此的辩论(例如 this one),我认为将两者混合通常不是一个好主意,开发人员应该坚持使用其中之一。

所以...我决定使用 NPM 因为这是我很高兴、熟悉和舒适的东西,而且我还没有看到任何可以证明切换到的增量Yarn 在我的例子中。 (打开以说服其他人。)

我的问题:

我想找出最佳实践 是什么,并从现在开始坚持下去。如果可能的话,我宁愿以后不要再考虑包管理了。

各有各的好处。

纱线:好处

  • 被认为比 NPM 更快
  • 容易use/stable
  • 与 NPM 相差无几

Yarn:缺点

  • 不适用于节点 v5 或更早版本。

  • 在 installing/compiling 本机模块时出现问题。 虽然我相信还有更多 recent updates/workarounds.