1. 使用VueCli编译生产环境代码以及创建不同模式

为生产环境构建代码

应用部署的流程

  • 构建
    Javascript 语言本身是不需要编译的。
    但是现代的前端项目使用的语言和或者的模块系统都无法在浏览器中使用,都需要使用特定的 bundler 将源代码最终转换为浏览器支持的 Javascript 代码。
  • 不同的环境

开发环境

  • 会添加丰富的错误提示
  • 可以使用 mock server 或者本地后端环境
  • 添加各种便利的功能 - 比如 hot reload,自动刷新
  • 不太关心静态资源的大小,最好提供最丰富的调试信息(sourcemap)等。

生产环境

  • 稳定是最重要的原则
  • 速度是第一要务

生产环境和测试环境的区别

  • 高度相似
  • 使用的后端服务不一样

Vue Cli 的模式

文档地址:cli.vuejs.org/zh/guide/mo...

  • development 模式用于 vue-cli-service serve
  • test 模式用于 vue-cli-service test:unit
  • production 模式用于 vue-cli-service build

模式将决定您的应用运行的模式,是开发,生产还是测试,因此也决定了创建哪种对不同环境优化过的 webpack 配置。

test 模式:Vue CLI 会创建一个优化过后的,并且旨在用于单元测试的 webpack 配置,它并不会处理图片以及一些对单元测试非必需的其他资源。

development 模式:会创建一个 webpack 配置,该配置启用热更新,不会对资源进行 hash 也不会打出 vendor bundles,目的是为了在开发的时候能够快速重新构建。

在运行命令的时候设置环境变量的工具:cross-env

文档地址:github.com/kentcdodds/...

环境变量文件

cli.vuejs.org/zh/guide/mo...

在你的项目根目录中放置下列文件来指定环境变量

js 复制代码
.env               # 在所有的环境中被载入
.env.local         # 在所有的环境中被载入,但会被 git 忽略
.env.[mode]        # 只在指定的模式中被载入
.env.[mode].local  # 只在指定的模式中被载入,但会被 git 忽略

一个环境文件只包含环境变量的 "键 = 值" 对:

  • VUE_APP_ 开头的变量
  • NODE_ENV : 当前使用的模式
  • BASE_URL : 部署到的基础路径
js 复制代码
NODE_ENV=development
VUE_APP_FOO=bar
BASE_URL='/'

读取变量

js 复制代码
console.log(process.env.NODE_ENV) // development
console.log(process.env.VUE_APP_FOO) // bar
console.log(process.env.BASE_URL) // '/'
相关推荐
why技术1 小时前
eli5,我觉得这个全网在吹的技能,使用体验真的很一般啊。
前端·人工智能·后端
excel1 小时前
记录升级 nuxt3 到 nuxt4 记录
前端
剑胆琴心静水深流1 小时前
全栈之路6---web集成与呈现
前端·vue.js·spring boot·分布式·spring·前端框架·npm
前端snow1 小时前
ai agent -- Memory汇总
前端
ITresearchGuest2 小时前
AI 焦虑下,前端该何去何从
前端·人工智能
Codiggerworld2 小时前
Chrome DevTools 隐藏神技:这 5 个调试技巧你可能从来没用过
前端·chrome·chrome devtools
旋生万物2 小时前
【终极实战】用Python从零“生成“一个宇宙:螺旋干涉模型的代码实现
开发语言·前端·人工智能·react.js·php·wpf
IT_陈寒3 小时前
被Java的final坑惨了,这些细节你可能也忽略了
前端·人工智能·后端
kyriewen3 小时前
我带着DeepSeek Harness跑了一周真实需求——这份避坑速查表请收好
前端·ai编程·deepseek
计算机魔术师3 小时前
OpenAI不单独发o3了,Altman说GPT-5才是终局
前端