javascript - 覆盖或更改 package.json "homepage"值

标签 javascript json reactjs

我当前正在尝试从另一个文件覆盖或更改 package.json 中的值。基本上,package.json 有一个“主页”值,当我运行 npm run build 时会构建该值。我希望能够从我的 config.jsconfig.production.json 文件更改该值。我希望我的环境值全部位于配置文件中,以便更容易修改。但是,当我运行 npm run build 时,它仍然从 package.json 加载我的主页值。

package.json

{
  "homepage": "/company/portal"
}

config.生产.json

{
  "configPath": "/newCompany/portal"
}

感谢您的帮助

最佳答案

如果您一般指的是如何通过浏览器中的脚本在客户端计算机中写入文件,那么这不是一件容易允许的事情,而且您还会遇到很多跨浏览器问题,通过 0 实现它。

你可以尝试看看这个库,它看起来相当不错:

https://eligrey.com/demos/FileSaver.js/

您还可以考虑向 node.js 应用程序启动 AJAX 请求,例如,它会轻松地将文件写入您的系统或提供下载,或者通常向服务器端发送要下载的文件客户端。

但是,从您解释的情况来看,您只需要更改系统中的配置文件,因此考虑到您使用的是node.js,最简单的方法是使用node.js

通常强烈建议不要将环境变量值放入 JSON 文件中。看起来你让事情井井有条,但很可能你的代码将被推送到某个地方,因此打开 JSON 文件,任何人都可以看到你的环境变量的所有值。这可不是什么好事。

在我看来,您应该考虑编写构建脚本,以便在调用时获取参数,然后调用传递参数的构建。例如:

npm build --production
npm build --development

根据参数,您将即时设置正确的配置。

希望这有帮助

关于javascript - 覆盖或更改 package.json "homepage"值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44185073/

相关文章:

javascript - 下面的js代码有什么区别?

javascript - 出现 'Cannot resolve method' 错误

javascript - jQuery - Ajax 不返回 json 响应

javascript - 为 NodeJS 转换 api json 响应

iphone - 切换表单输入动画在移动 Safari 中奇怪地弹跳

javascript - 在 Restangular 集合上使用 lodash 数组函数

javascript - 动画不透明文本CSS

Mysql WHERE 字段包含 JSON 变量

javascript - 使用 props 将子组件数据传递给父组件

javascript - 自定义光标悬停状态