如何通过 npm 更改用于引导 reactJs 的默认配置文件

Posted

技术标签:

【中文标题】如何通过 npm 更改用于引导 reactJs 的默认配置文件【英文标题】:How to change the default configuration files used in bootstrapping of reactJs through npm 【发布时间】:2017-10-03 11:30:55 【问题描述】:

我使用 create-react-app 命令创建了一个非常基本的 hello world reactJs 应用程序,它是 npm 的一部分。这是我作为应用程序模板的一部分获得的目录结构:

我的package.json 文件如下所示:


  "name": "hello-world",
  "version": "0.1.0",
  "private": true,
  "dependencies": 
    "react": "^15.4.2",
    "react-dom": "^15.4.2"
  ,
  "devDependencies": 
    "react-scripts": "0.9.5"
  ,
  "scripts": 
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
  

我观察到每次我执行npm run build 命令时,它都会使用public 目录中的index.htmlsrc 目录中的index.jssrc 目录中创建最终的生产版本。我确信这是因为所有内部管道都通过 npm 发生。有人可以帮我了解这是怎么发生的吗?如何将这些目标文件更改为我自己的名为 HelloWorld.html(存在于public 目录中)和myApp.js(存在于src 目录中)的自定义文件?

【问题讨论】:

【参考方案1】:

如果您想更改构建配置,您可以运行npm run eject,它将从您的项目中删除构建依赖项并将配置文件添加到您的项目中,让您可以根据需要进行更改。

注意,此操作为单程票,不能退!

https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md#npm-run-eject

【讨论】:

太棒了!我可以看到这个操作创建了一个包含paths.jsconfig目录。在path.js 文件中,我将module.exports 语句中的appHtml 键更改为appHtml: resolveApp('public/Helloworld.html') 以加载我自己的html 文件HelloWorld.html。超级直接。您可能希望在帖子中添加此信息,以使您的答案更完整。

以上是关于如何通过 npm 更改用于引导 reactJs 的默认配置文件的主要内容,如果未能解决你的问题,请参考以下文章

如何让引导卡留在reactjs中的屏幕中间

引导类在 ReactJS 组件中不起作用

ReactJs 和 Typescript,使用 TSX 时如何更改对象内变量的状态

如果响应在模态中出错,则 ReactJS 引导警报

reactjs中损坏的引导网格布局

如何通过 websockets 在 ruby​​ on rails 和 reactJS 之间发送数据