首页 > 解决方案 > 常见的 NPM “sdk” 包?

问题描述

假设我有几个节点项目——都非常相似(例如所有 React 应用程序)

维护单个 SD 存储库以维护公共依赖项是否是个好主意,例如相同版本的react-router-package?

例如,我可以像这样创建一个“sdk 包”:

{
  "name": "my-react-sdk",
  "version": "1.1.0",
  "dependencies": {
    "@types/react-router-dom": "5.1.5",
    "react-router-dom": "5.2.0"
  }
}

我所有的反应应用程序都会导入这个 sdk 包

{
  "name": "my-app",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "react": "^17.0.1",
    "react-dom": "^17.0.1",
    "react-scripts": "4.0.3",
    "my-react-sdk": "git+https://github.com/my-account/my-react-sdk.git",
  },
}

由于 npm/yarn 提升,sdk-packages 依赖项(即react-router-dom)将直接出现在node_modules:(node_modules/react-router-dom)中。

因此可以按通常的方式my-app导入。react-router-dom

这是一个好主意吗?有什么注意事项吗?

标签: npmsdkyarnpkghoisting

解决方案


推荐阅读