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.validate使用攻略 第三部
Jul 01 Javascript
JavaScript插件化开发教程 (四)
Jan 27 Javascript
谷歌Chrome浏览器扩展程序开发小记
Jan 06 Javascript
js中实现字符串和数组的相互转化详解
Jan 24 Javascript
基于gulp合并压缩Seajs模块的方式说明
Jun 14 Javascript
AngularJS自定义指令之复制指令实现方法
May 18 Javascript
谈谈对vue响应式数据更新的误解
Aug 01 Javascript
实例详解BootStrap的动态模态框及静态模态框
Aug 13 Javascript
微信小程序实现获取用户信息并存入数据库操作示例
May 07 Javascript
微信小程序实现页面跳转传递参数(实体,对象)
Aug 12 Javascript
详解基于Vue/React项目的移动端适配方案
Aug 23 Javascript
微信小程序单选框自定义赋值
May 26 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
php curl 登录163邮箱并抓取邮箱好友列表的代码(经测试)
2011/04/07 PHP
php中adodbzip类实例
2014/12/08 PHP
Laravel 5框架学习之Laravel入门和新建项目
2015/04/07 PHP
详解YII关联查询
2016/01/10 PHP
浅谈PHP命令执行php文件需要注意的问题
2016/12/16 PHP
JS 有名函数表达式全面解析
2010/03/19 Javascript
Javascript base64编码实现代码
2011/12/02 Javascript
JS实现悬浮移动窗口(悬浮广告)的特效
2013/03/12 Javascript
jsonp原理及使用
2013/10/28 Javascript
jquery插件bxslider用法实例分析
2015/04/16 Javascript
JavaScript类继承及实例化的方法
2015/07/25 Javascript
js中使用使用原型(prototype)定义方法的好处详解
2016/07/04 Javascript
AngularJS表单验证中级篇(3)
2016/09/28 Javascript
微信小程序实现带刻度尺滑块功能
2017/03/29 Javascript
使用JS模拟锚点跳转的实例
2018/02/01 Javascript
vue限制输入框只能输入8位整数和2位小数的代码
2019/11/06 Javascript
[58:18]2018DOTA2亚洲邀请赛3月29日 小组赛B组 iG VS Mineski
2018/03/30 DOTA
浅析Python数据处理
2018/05/02 Python
python实现创建新列表和新字典,并使元素及键值对全部变成小写
2019/01/15 Python
python隐藏类中属性的3种实现方法
2019/12/19 Python
python路径的写法及目录的获取方式
2019/12/26 Python
使用jupyter Nodebook查看函数或方法的参数以及使用情况
2020/04/14 Python
Python grpc超时机制代码示例
2020/09/14 Python
Python threading模块condition原理及运行流程详解
2020/10/05 Python
Python中logging日志的四个等级和使用
2020/11/17 Python
快速一键生成Python爬虫请求头
2021/03/04 Python
css3之UI元素状态伪类选择器实例演示
2017/08/11 HTML / CSS
北美Newegg打造的全球尖货海购平台:tt海购
2018/09/28 全球购物
美国在线打印网站:Overnight Prints
2018/10/11 全球购物
抽象方法、抽象类怎样声明
2014/10/25 面试题
终止劳动合同协议书
2014/04/14 职场文书
培训通知书模板
2015/04/17 职场文书
关于空气污染危害的感想
2015/08/11 职场文书
Python数据分析入门之数据读取与存储
2021/05/13 Python
Spring Data JPA框架Repository自定义实现
2022/04/28 Java/Android
MySQL生成千万测试数据以及遇到的问题
2022/08/05 MySQL