Vue在/public目录下访问process.env.NODE_ENV(其它通用)

总所周知,/public目录下的js文件是不会经过webpack处理的.

所以process.env.NODE_ENV 也无效.无法判断,当要根据这个去判断的时候就麻烦了. 但有个办法可以解决这个问题.

先安装 npm install --save-dev cross-env

就是在index.html里面去赋值到window变量中,如下

在 /public/index.html中加上

javascript 复制代码
 <script>
      window.VUE_APP_NODE_ENV = '<%= process.env.NODE_ENV %>';
    </script>

然后在/public下的js文件中就可以判断了

复制代码
 if(VUE_APP_NODE_ENV === 'dproduction'){ }

然后在 package.json中标记

复制代码
    "devtest": "cross-env NODE_ENV=dtest vue-cli-service serve",

上面的判断就跟赋值就会生效.

相关推荐
吃糖的小孩3 小时前
从只读页面到可控真实探针:我如何给 Owner Console 加手动诊断
前端
谷无姜3 小时前
为什么你的性能优化无效?可能是"木桶效应"在作祟
前端·性能优化
雾非雾3 小时前
《基于具身交互智能数字人技术:如何打造AI数字人宣讲平台"红厅智播”》
前端
Revolution613 小时前
一段 JavaScript 代码执行时,到底发生了什么
前端·javascript
智能起源3 小时前
关于元素层级过多,导致压祯的问题(使用winform或者WPF应用的webview组件嵌套网页时,动效卡顿问题)
前端
Old Uncle Tom4 小时前
银行用户画像 -- 金融目标与需求意图
前端·人工智能·金融
IT_陈寒4 小时前
Vue的响应式让我加班到凌晨3点,原来问题出在这
前端·人工智能·后端
东方小月4 小时前
从0开发一个 Coding Agent(一):前言
前端·人工智能·typescript
恋猫de小郭4 小时前
Flutter 全新真 3D 实现,用 flutter_scene 能开发一个「我的世界」
android·前端·flutter