gpt4 book ai didi

node.js - 如何在运行浏览器脚本之前设置 process.env?

转载 作者:搜寻专家 更新时间:2023-10-31 22:18:18 24 4
gpt4 key购买 nike

初始html 来自后端。服务器有一个已定义的 process.env.NODE_ENV(以及其他环境变量)。浏览器化代码构建一次在多个环境中运行(stagingproduction 等),因此它无法将环境变量内联到浏览器化脚本中(例如通过 envify)。我希望能够在呈现的 html 中写出环境变量,并让浏览器代码使用这些变量。这可能吗?

这是我想象的完成方式:

<html>
<head>
<script>window.process = {env: {NODE_ENV: 'production'}};</script>
<script src="/build/browserified_app.js"></script>
</head>
</html>

最佳答案

不要到处硬编码环境变量,而是使用 envify插件。

npm install envify 

此插件会使用您作为参数传递给 envify 的内容自动修改 process.env.VARIABLE_HERE

例如:

browserify index.js -t [ envify --DEBUG app:* --NODE_ENV production --FOO bar ] > bundle.js

在你的应用程序中 process.env.DEBUG 将被替换为 app:*process.env.NODE_ENV 将被替换为 production 等等。在我看来,这是一种干净且优雅的处理方式。

关于node.js - 如何在运行浏览器脚本之前设置 process.env?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26540627/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com