vue cli 3.0通用打包配置代码,不分一二级目录


Posted in Javascript onSeptember 02, 2020

1.项目根目录下新建vue.config.js,进行如下配置即可

module.exports={
 publicPath:'',
};

补充知识:Vue-CLI3.0更改打包配置

在实际项目开发中,我们一般会直接使用vue、vue-cli来搭建项目。vue框架的宗旨就是让初学者轻松上手,所以,对于打包配置的一些东西,vue的脚手架已经帮我们做好了完美的封装,让我们达到安装既用的效果,也不用担心太多不会做打包配置的问题。

在前期使用Vue-CLI2.0搭建项目时,我们可以在build目录下,直接修改webpack配置项。

但在Vue-CLI3.0中已经帮我们对webpack配置做了二次封装,在使用3.0版本搭建项目时,我们并不需要去关心原生webpack的配置,只需要查看Vue-CLI3.0官方API即可。

vue-cli3.0中的打包配置

vue-cli3.0的安装

npm install -g @vue/cli

使用vue-cli3.0搭建项目

vue create my-project

项目目录如下

vue cli 3.0通用打包配置代码,不分一二级目录

在创建好的项目中,并不存在webpack的配置文件。因为vue框架里,不需要知道如何配置webpack, 只需要在项目根目录下创建一个vue.config.js配置文件,通过vue-cli脚手架中的一些封装好的简单配置来实现即可。

Vue脚手架工具的宗旨是让用户配置起来更简单,所以在Vue-CLI3.0没有把webpack的一些配置项直接暴露给我们,而是在webpack的基础上再次封装了更简单的API,供我们使用。这样即便我们不会用webpack, 也可以通过一些简单的配置,对脚手架的一些打包配置以及打包流程做一些变更。

执行打包:npm run build

vue cli 3.0通用打包配置代码,不分一二级目录

vue-cli脚手架默认生成的打包目录为dist目录,如果我们想通过配置,改变打包生成的目录名称,可创建vue.config.js,通过outputDir来配置:

vue.config.js

module.exports = {
 outputDir: 'xiaochengzi' // 生成文件为xiaochengzi
}

再次打包:npm run build

vue cli 3.0通用打包配置代码,不分一二级目录

vue-cli对webpack的output.path做了再次封装,所以我们仅仅通过一个键值对outputDir: 'xiaochengzi'即可实现配置的更改。事实上,脚手架底层使用的还是:output.path

//vue-cli的api
outputDir: 'xiaochengzi'

//底层会通过webpack的配置项output.path实现
output: {
 path: path.resolve(__dirname, 'xiaochengzi')
}

以上只是举个例子,更多vue-cli配置需求请参考官方文档:Vue-CLI(查看官方详解)

特殊需求

项目中如果有特殊配置需求,Vue-CLI官方提供的配置API里无法实现的话,我们也可以通过官方预留的configureWebpack来对原生的webpack进行配置。

举个小栗子:

在刚刚创建好的项目根目录下新建static目录,在static目录下新增index.json文件:

vue cli 3.0通用打包配置代码,不分一二级目录

通过打包运行,我们想在浏览器通过访问localhost:8080/index.json直接可以访问到我们的json对象,不做配置的情况下,在浏览器访问显示如下:(还是初始页面)

vue cli 3.0通用打包配置代码,不分一二级目录

通过configureWebpack来对原生的webpack进行配置:

const path = require('path');
module.exports = {
 configureWebpack: { // 对原生的webpack进行配置 
 devServer: {
  contentBase: [path.resolve(__dirname, 'static')]
 }
 }
}

此配置标识:当访问指定文件时,webpack-dev-server服务不光回去打包后的dist目录下去查找文件,还会去static目录下查找文件,找到匹配文件后,既返回匹配文件内容。

再次打包运行:npm run serve

浏览器访问localhost:8080/index.json,显示结果如下:

vue cli 3.0通用打包配置代码,不分一二级目录

总结:Vue-CLI3.0不仅帮我们做了webpack的大量API的封装,还帮我们预留了不常用需求的配置接口,方便我们项目开发,减轻我们的学习难度(就算对webpack不太懂的情况下,也能通过阅读Vue-CLI官方文档,来轻松上手做webpack的配置)。

以上这篇vue cli 3.0通用打包配置代码,不分一二级目录就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery之Document元素选择器篇
Aug 14 Javascript
禁止JQuery中的load方法装载IE缓存中文件的方法
Sep 11 Javascript
window.js 主要包含了页面的一些操作
Dec 23 Javascript
IE6-IE9不支持table.innerHTML的解决方法分享
Sep 14 Javascript
JQuery页面图片切换和新闻列表滚动效果的具体实现
Sep 26 Javascript
12306验证码破解思路分享
Mar 25 Javascript
JS代码防止SQL注入的方法(超简单)
Apr 12 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
Sep 05 Javascript
Bootstrap基本组件学习笔记之面板(14)
Dec 08 Javascript
vue单页开发父子组件传值思路详解
May 18 Javascript
关于JavaScript中异步/等待的用法与理解
Nov 18 Javascript
关于JavaScript 中 if包含逗号表达式
Nov 27 Javascript
Vue-cli打包后如何本地查看的操作
Sep 02 #Javascript
JavaScript this关键字指向常用情况解析
Sep 02 #Javascript
JavaScript arguments.callee作用及替换方案详解
Sep 02 #Javascript
JavaScript Array.flat()函数用法解析
Sep 02 #Javascript
通过实例解析JavaScript常用排序算法
Sep 02 #Javascript
手把手教你实现 Promise的使用方法
Sep 02 #Javascript
如何基于jQuery实现五角星评分
Sep 02 #jQuery
You might like
生成缩略图
2006/10/09 PHP
PHP中调用C/C++制作的动态链接库的教程
2016/03/10 PHP
php实现xml转换数组的方法示例
2017/02/03 PHP
ThinkPHP中调用PHPExcel的实现代码
2017/04/08 PHP
Laravel中的chunk组块结果集处理与注意问题
2018/08/15 PHP
详解CSS样式中的 !important * _ 符号
2021/03/09 HTML / CSS
Prototype使用指南之range.js
2007/01/10 Javascript
Prototype 工具函数 学习
2009/07/23 Javascript
学习ExtJS fit布局使用说明
2009/10/08 Javascript
jQuery 学习第五课 Ajax 使用说明
2010/05/17 Javascript
js借助ActiveXObject实现创建文件
2013/09/29 Javascript
跨域传值即主页面与iframe之间互相传值
2013/12/09 Javascript
使用ajax+jqtransform实现动态加载select
2014/12/01 Javascript
简单谈谈javascript中this的隐式绑定
2016/02/22 Javascript
jQuery中 $ 符号的冲突问题及解决方案
2016/11/04 Javascript
微信公众平台开发教程(四) 实例入门:机器人回复(附源码)
2016/12/02 Javascript
适用于手机端的jQuery图片滑块动画
2016/12/09 Javascript
php中and 和 &&出坑指南
2018/07/13 Javascript
在js代码拼接dom对象到页面上的模板总结
2018/10/21 Javascript
vue 基于element-ui 分页组件封装的实例代码
2018/12/10 Javascript
countUp.js实现数字滚动效果
2019/10/18 Javascript
[00:12]DAC2018 天才少年转战三号位,他的SOLO是否仍如昔日般强大?
2018/04/06 DOTA
Python字符串逐字符或逐词反转方法
2015/05/21 Python
使用python遍历指定城市的一周气温
2017/03/31 Python
利用selenium 3.7和python3添加cookie模拟登陆的实现
2017/11/20 Python
Django unittest 设置跳过某些case的方法
2018/12/26 Python
详解Django+uwsgi+Nginx上线最佳实战
2019/03/14 Python
python/golang 删除链表中的元素
2020/09/14 Python
python3 os进行嵌套操作的实例讲解
2020/11/19 Python
私有程序集与共享程序集有什么区别
2013/04/05 面试题
计算机软件个人的自荐信范文
2013/12/01 职场文书
法制宣传口号
2014/06/16 职场文书
创先争优活动心得体会
2014/09/04 职场文书
解决Pytorch修改预训练模型时遇到key不匹配的情况
2021/06/05 Python
pandas时间序列之pd.to_datetime()的实现
2022/06/16 Python
在windows server 2012 r2中安装mysql的详细步骤
2022/07/23 Servers