Vuejs 基础学习教程
(四)构建基础进阶-env文件与环境设置
我们在实际开发中,我们一般会经历项目的开发阶段,测试阶段,和最终上线阶段,每个阶段对于项目代码的需要可能都有所不同,那我们怎么让它在不同阶段呈现不同的效果呢?我们下面看一下环境是不是可以解决这个问题呢?
介绍
1、配置文件
正确的配置环境首先我们要认识一下不同配置之间的关系。随便画个图表示一下:
这里说的是最全的的可能,我们可以看到不同的环境有着不同的配置,他们之间还有一些交集,就是他们的公公配置,那么我们思考一下在vue中我们需要怎么处理?
其实很简单,就是在项目的跟目下创建不同的环境变量配置:
如:
.env 表示在所有环境中被载入
.env.local 表示在所有环境中被载入,但是git会自动忽略
.env.[mode] 表示只有指定的模式才会载入
.env.[mode].local 表示只有在指定的模式才会载入,但是会被git自动忽略
比如,我们在本地创建几个环境配置,如下图:
以.env.dev这个文件为例子,看一下这个文件中的环境变量怎么写
在脚本管理配置中加载这种环境模式试一下
马上启动一下看看这种环境是否生效
可以看到这种环境配置事情作用了的。
这里其他的环境我们就不做详细讲解了,基本都八九不离十,这里我需要记录一下我测试的一些小发现,这些环境配置的优先权重是怎么样的呢。直接上干货:.env.[mode].local > .env.[mode] >.env.local >.env .
但是这里说一下,除了环境的配置权重,不同的配置他们会进行合并操作,类似于Object.assign的用法。
2、额外配置
我们还可以通过新建配置文件的方式为不同的环境配置不同的变量,但是我们发现.env这种文件好像仅仅支持静态值。那怎么办,这里我想了一下发现可以手动在根目录下创建一个自己的配置文件。
我们还可以直接在vue.config.js中直接注入这些动态地配置,这里可以查阅一下chainWebpack这个属性来修改DefinePlugin的值,我们看一下官网的写法。

总结
环境的配置和管理对于项目的构建很重要,通过不同的项目配置可以增加灵活性,提高程序的扩展性,也可以帮我们有效的分析和定位不同环境下的运行机制和问题。
http://www.dtmao.cc/news_show_1309867.shtml
Vuejs 基础学习教程的更多相关文章
- C++基础学习教程(八)
转载请注明出处:http://blog.csdn.net/suool/article/details/38300117 引入 在进行下一步的学习之前,我们须要厘清几个概念. RAII 首先介绍一个编程 ...
- C++基础学习教程(一)
開始自己的C++复习进阶之路. 声明: 这次写的博文纯当是一个回想复习的教程.一些非常基础的知识将不再出现.或者一掠而过,这次的主要风格就是演示样例代码非常多~~~ 全部代码在Ubuntu 14.04 ...
- spring boot基础学习教程
Spring boot 标签(空格分隔): springboot HelloWorld 什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新 ...
- webpack从0到1超详细超基础学习教程
概念 自己是一个一听到webpack就头大,看着一堆不知道那是什么玩意的东西总觉得自己做好前端就行了,但是在使用vue-cli的时候总觉得要改其中的一些东西进行项目初始化的时候能够更好使用!所以想要根 ...
- C++基础学习教程(六)----类编写的前情回想以及项目实战(1)
在開始类的编写之前我们依旧须要回想整理一下前面所说的内容,(前面尽管是一个自己定义数据类型的实现过程,可是内容有点繁杂). 先看一段代码: /** @file calssStruct.cpp */ / ...
- C++基础学习教程(五)
这一讲我们集中解说类和他的一些特性.首先我们从自己定义一个有理数类来開始. 在C语言中有一个keyword: struct ,用来创建一个结构体类型.可是在C++中这个关键的含义就不只如此了,以下我们 ...
- C++基础学习教程(三)
承接上一讲. 2.7文件I/O 关于读写文件,C++中有一个专门的头文件<fstream>. 首先是读文件演示样例,例如以下: </pre><pre> /***** ...
- C++基础学习教程(七)----类编写及类的两个特性解析--->多态&继承
类引入 到眼下为止我们所写的自己定义类型都是keywordstruct,从如今起我们将採用class方式定义类,这样的方式对于学习过其它高级语言包含脚本(Such as Python)的人来说再熟悉只 ...
- javascript 基础学习教程
http://www.itxueyuan.org/javascript/jiaocheng_2/
随机推荐
- git-廖雪峰版教程学习笔记
- 对数几率回归(逻辑回归)原理与Python实现
目录 一.对数几率和对数几率回归 二.Sigmoid函数 三.极大似然法 四.梯度下降法 四.Python实现 一.对数几率和对数几率回归 在对数几率回归中,我们将样本的模型输出\(y^*\)定义 ...
- 牛客剑指Offer-数字在升序数组中出现的次数
题目 统计一个数字在升序数组中出现的次数. 示例1 输入 [1,2,3,3,3,3,4,5],3 返回值 4 题解 第一种最简单的方法是O(n)复杂度.遍历数组统计结果. public int Get ...
- docker 容器和镜像的常用命令
镜像 docker rmi 镜像id -f # 删除指定镜像 docker rmi 镜像id 镜像id -f # 删除多个镜像 docker rmi -f $(docker images -aq) # ...
- 转发:[服务器]SSL安装证书教程
[服务器]SSL安装证书教程 来自阿里云教程 Tomcat服务器安装SSL证书 安装PFX格式证书 https://help.aliyun.com/document_detail/98576.ht ...
- 构造无字母数字Webshell
异或: 补充: A的ascii为65,对应二进制是01000001 <?php echo "1"^"A"; ?> 将"A"和&q ...
- ctfhub技能树—信息泄露—git泄露—Log
什么是git泄露? 当前大量开发人员使用git进行版本控制,对站点自动部署.如果配置不当,可能会将.git文件夹直接部署到线上环境.这就引起了git泄露漏洞. 打开靶机环境 查看网页内容 使用dirs ...
- 实现所有SAP设备打印机并行打印
SAP版本:ECC 6.0 701 1.如何实现所有SAP设备打印机并行打印? I.通过事务码:SPAD,进入假脱机管理初始屏幕.点击左上角的菜单中 配置(c)=>输出设备,进入SAP系统 输出 ...
- 学习Java第三天
方法重载:同一个类,方法名相同,参数不同(个数不同,类型不同,顺序不同),判断是否重载,只看方法名和参数,跟返回值无关. IDEA查看方法源代码:Crtl + 鼠标左键 进制表示 Java数值默认为十 ...
- Ubuntu源、Python虚拟环境及pip源配置
Ubuntu 命令行更改源 在修改source.list前,最好先备份一份 软件源的地址配置文件在 /etc/apt/sources.list 执行备份命令 sudo cp /etc/apt/sour ...