1

我开始使用 Walmart 的名为Electrode的新 React 框架。

但是,我无法理解项目依赖项的定义位置,因为我没有看到 package.json 中的所有内容。我正在运行一个 linter,所以它向我显示错误,说像 redux 和 react 之类的包没有在依赖项中定义。但是,如果我执行 npm 安装,它会安装所有软件包。npm 是如何知道安装其他包的?

这是 package.json 中的内容 - 因此其他包(如 react)必须在其他地方链接、配置或定义。

 "dependencies": {
    "above-the-fold-only-server-render": "^1.0.2",
    "bluebird": "^3.4.6",
    "electrode-archetype-react-app": "^1.0.0",
    "electrode-csrf-jwt": "^1.0.0",
    "electrode-react-ssr-caching": "^0.1.3",
    "electrode-redux-router-engine": "^1.0.0",
    "electrode-server": "^1.0.0",
    "electrode-static-paths": "^1.0.0",
    "lodash": "^4.10.1"
  },
4

1 回答 1

0

React 和 Redux 是在electrode-react-ssr-caching's中定义的package.json,因此它们是您项目的间接依赖项,因为您依赖于electrode-react-ssr-caching.

您可以看到哪个包导致某些东西被安装npm ls <package>,例如npm ls react,它将显示该包的依赖关系树(有关示例,请参阅我对类似问题的回答)。如果您使用 Yarn,yarn why <package>将起到类似的作用。

于 2016-11-27T13:21:14.687 回答