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) // '/'
相关推荐
Amos_Web3 小时前
Rspack 源码解析(五):CodeGenerationPass 与模块代码生成
前端·前端框架·源码阅读
八荒启·交互动画3 小时前
Web特效06——WebGL深挖:顶点着色器和片元着色器到底在干什么
前端·网页特效·八荒启-交互动画·八荒启
这锅我不背哈3 小时前
前端权限控制实践:基于 RBAC 的完整落地方案
前端
星空3 小时前
Map<String, String>`Map`是接口,不能直接 new
java·前端·算法
开开心心就好4 小时前
低年级识字练笔顺工具,电脑和安卓端都能用
前端·javascript·网络·安全·scala·erlang·语音识别
杨利杰YJlio4 小时前
ITSK PE 26U5 测试版解读:组件完善、VMD 修复与服务器支持边界
前端·javascript·后端
志尊宝4 小时前
Vue3 零基础每日笔记(021):class 与 style 动态绑定——对象、数组、三元表达式写法汇总
前端·vue.js·笔记·前端框架·html5
夏幻灵4 小时前
Vue / React 列表渲染中的 key:为什么没有 key,Checkbox 可能“对号跑错”?
前端·javascript·vue.js
YWL4 小时前
vue-time-axis-plus进阶:双进度条+跨空白续播+播放指针,打造专业级监控回放体验
前端·javascript·vue·时间轴
mmsx4 小时前
MapLibre 实战 09|Bug 单写着"地图被风刮走了":一个瓦片源工厂,是三个线上事故换来的
android·前端·开源