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

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

相关推荐
石小石Orz19 分钟前
浏览器的预检请求OPTIONS到底有什么用?
前端
落雪小轩韩23 分钟前
网格布局 CSS Grid
前端·css
parade岁月25 分钟前
Vue 3 父子组件模板引用的时序陷阱与解决方案
前端
xianxin_30 分钟前
CSS Outline(轮廓)
前端
moyu8430 分钟前
遮罩层设计与实现指南
前端
柯南952730 分钟前
Vue 3 reactive.ts 源码理解
vue.js
Sammyyyyy36 分钟前
2025年,Javascript后端应该用 Bun、Node.js 还是 Deno?
开发语言·javascript·node.js
Pedantic39 分钟前
用 SwiftUI 打造一个 iOS「设置」界面
前端
柯南952741 分钟前
Vue 3 Ref 源码解析
vue.js
timeweaver1 小时前
深度解析 Nginx 前端 location 配置与优先级:你真的用对了吗?
前端·nginx·前端工程化