【问题标题】:Package.json dependcies issues in a react app using Walmart's Electrode framework使用 Walmart 的 Electrode 框架的 React 应用程序中的 Package.json 依赖问题
【发布时间】:2016-11-27 12:04:01
【问题描述】:

我开始使用 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"
  },

【问题讨论】:

    标签: node.js npm walmart-electrode


    【解决方案1】:

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

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

    【讨论】:

    • 关于如何适应 airbnb eslint 错误import/no-extraneous-dependencies 的任何建议 - 它指出它应该列在依赖项中,即使它包含在子依赖项中?我应该忽略那个错误吗?最好修改它以查看适当的子依赖项
    • 您能否在问题中包含您的.eslintrc,以便我看一下?
    • @MonkeyBonkey match-regex 要求您的所有文件都是小写字母、数字或破折号 (-)。你所有的文件都是这样吗?
    • 错误是没有找到规则——不是没有通过规则
    • 我安装了文件名插件` npm install --save-dev eslint-plugin-filenames babel-eslint` 但它仍然出错
    猜你喜欢
    • 1970-01-01
    • 2021-11-30
    • 2015-06-27
    • 2023-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-03
    相关资源
    最近更新 更多