【问题标题】:Unable to import node modules in React components无法在 React 组件中导入节点模块
【发布时间】:2018-03-21 00:44:14
【问题描述】:

我正在摆弄以下本地 drf-react 设置。我对 react 和 javascript 很陌生,完全不知道为什么我不能在我的 react 组件中导入 axios 或任何其他节点模块,除了 cookiecutter 项目本身已经附带的模块。这与 react-dev-utils.. 有关吗?我想使用 webpack,但我没有正确设置它。我的前端 docker 容器不会组合,告诉我安装 webpack-cli。非常感谢您的帮助。

https://github.com/moritz91/drf-react-app

【问题讨论】:

    标签: reactjs npm webpack import module


    【解决方案1】:

    您应该在前端文件夹中运行命令npm install

    • 打开终端
    • 找到前端文件夹
    • 在其中运行命令npm install

    此命令将安装与您的 package.json 文件相关的依赖项,该文件位于前端文件夹中。

    在你的 React 文件中,你将把整个路径放到 node_modules 文件夹中。

    使用 node_modules 的想法是更容易控制项目中的依赖项。您应该再次考虑使用 webpack 来处理来自 node_modules 的这些文件。

    Wepack 有一个名为 resolve 的模块,您必须在其中填写目录列表,并且在 React 组件中您不再需要使用整个路径,因为 Webpack 会知道在哪里查找:

    // ALIAS
    resolve: {
       extensions: ['.js', '.jsx', '.scss'],
       modules: [
         'YOUR SOURCE FOLDER',
         'YOUR NODE MODULES FOLDER',
         'ANY OTHER FOLDER'
       ]
    }
    

    来自文档:

    Tell webpack what directories should be searched when resolving modules.

    文档:https://webpack.js.org/configuration/resolve/

    另外,我有一个使用 Webpack + Bootstrap 4 的示例。 您可以使用为 React 和 Redux 构建自己的 Webpack 配置。

    https://github.com/italoborges/webpack-bootstrap4-es6

    【讨论】:

    • 谢谢。我认为 react-scripts 包含一个 webpack-dev-server 配置,并且会负责为我解析节点模块。是时候设置 webpack 了!
    猜你喜欢
    • 2020-10-31
    • 1970-01-01
    • 1970-01-01
    • 2017-01-10
    • 1970-01-01
    • 2019-04-10
    • 2020-08-24
    • 2020-12-23
    • 2019-02-27
    相关资源
    最近更新 更多