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",

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

相关推荐
江城开朗的豌豆几秒前
JavaScript篇:字母侦探:如何快速统计字符串里谁才是'主角'?
前端·javascript·面试
kite01216 小时前
浏览器工作原理06 [#]渲染流程(下):HTML、CSS和JavaScript是如何变成页面的
javascript·css·html
крон6 小时前
【Auto.js例程】华为备忘录导出到其他手机
开发语言·javascript·智能手机
coding随想8 小时前
JavaScript ES6 解构:优雅提取数据的艺术
前端·javascript·es6
年老体衰按不动键盘9 小时前
快速部署和启动Vue3项目
java·javascript·vue
小小小小宇9 小时前
一个小小的柯里化函数
前端
灵感__idea9 小时前
JavaScript高级程序设计(第5版):无处不在的集合
前端·javascript·程序员
小小小小宇9 小时前
前端双Token机制无感刷新
前端
小小小小宇9 小时前
重提React闭包陷阱
前端
小小小小宇9 小时前
前端XSS和CSRF以及CSP
前端