前端开发3年了,竟然不知道什么是 Vue 脚手架?(下)
上一篇文章《前端开发3年了,竟然不知道什么是 Vue 脚手架?(上)》介绍了什么是脚手架,以及Vue-cli 2.x如何创建项目,创建的项目结构。这篇文章介绍 Vue-cli 3.x 如何构建项目?
一、Vue-cli 2 与 Vue-cli 3的区别
- vue-cli 3 是基于 webpack 4 打造的,vue-cli 2 还是 webpack 3。
- vue-cli 3 的设计原则是 “0配置”,移除 build 和 config 等配置目录。
- vue-cli 3 提供了 vue ui 命令,提供可视化配置,更加人性化。
- vuc-cli 3 移除 static 文件夹,新增 public 文件夹,index.httml 移入了 public 文件夹。
接下来看看,vue-cli 3 是如何创建项目的,以及可视化配置是怎么样的?
二、Vue CLI 3.x 初始化项目
2.1、新建项目文件夹,打开命令行
vue create learn
运行以上命令,创建文件名为learn的vue项目。
运行命令如下图:
方框内提示我们发现有可用新版本脚手架,可以运行下边命令进行更新。
下边有三个选项,分别为:
- Please pick a preset:(Use arrow keys) - 请选择一个已配置的关键字选项
- default (babel,eslint) - 默认的,选babel和eslint包
- Manually select features - 手动选择需要的特性
2.2、选择最后一个手动配置
选择之后,如上图。最前边的括号内有个绿色星号,表示被选中,我们可以使用上下箭头进行切换,点击空格进行选中和取消。
根据需要,选择完成之后,点击回车继续向下。
2.3、选择配置文件类型
In dedicated config files - 独立配置文件
In package.json - 配置信息放入 package.json文件
选择 独立配置文件之后,继续向下。
2.4、是否保存本次创建项目特性作为配置项?
提示后携带(y/n),输入y表示确定保存配置,n表示取消保存。
我们选择 y 保存之后,以后创建项目就不需要选择这么多了,一键就可以生成项目。
紧接着需要配置键值,下次我们可以通过键值就能看到,比如设置一个前端人的简写:qdr。回车之后项目就开始创建了。
2.5、如何查看之前保存的配置选项,如果不需要了我们如何删除呢?
再次创建项目的时候,第一个选项就多了一项,如图:
第一个 “qdr” 是我们上次创建项目保存的配置信息。如果我们不想要了,或者保存的多了之后,把不常用的就需要删除掉,可以进入:C/user/Administrator 查找 .vuerc 文件。
rc = run command,vuerc也就是vue的运行命令,它的内容如下:
{
"useTaobaoRegistry": true,
"presets": {
"qdr": {
"useConfigFiles": true,
"plugins": {
"@vue/cli-plugin-babel": {}
}
}
},
"latestVersion": "4.5.13",
"lastChecked": 1630908642473
}
我们只需要删除 presets 中,不想要的配置项就好了,再运行命令,命令中就没有了。
如此,我们的vue-cli 3的项目就创建完成了。
三、Vue-cli 3 项目结构介绍
对新建的项目结构截图,如下图:
它们的文件以及对应的意义如下:
- node_modules - 项目需要用的node包
- public - 相当于static 文件夹,原样输出
- src - 开发资源
- .browserslistrc - 浏览器相关配置
- .gitignore - 设置提交 git 的忽略信息
- babel.config.js - 对 babel 配置信息
- package-lock.json - 记录依赖包的真实版本
- package.json - 配置文件
- README.md - 使用介绍
四、项目运行
打开 package.json 文件,查找 scripts 内运行脚本,我们发现 server 。
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build"
},
4.1、启动服务
npm run serve
4.2、main.js 内容改变了
import Vue from 'vue'
import App from './App.vue' Vue.config.productionTip = false new Vue({
render: h => h(App),
}).$mount('#app')
我们发现之前的 el:'#app' 丢失了,而后边又多了 $mount("#app")。
el: "#app" , 是挂载实例的
$mount("#app") 功能是一样的,所以替换下与之前的vue-cli使用runtime-only是一致的。
运行,打包配置与之前都是差不多,最重要的是vue-cli 3多了一个图形化界面管理工具,具体看看如何使用。
五、图形化界面管理工具
使用命令,启动我们的图形化界面管理服务,使用:
vue ui
启动之后,提示我们服务地址为:http://localhost:8000/
第一次进入之后,没有选择的项目,所以提示我们先导入项目。
5.1、启动项目、打包
选择一个项目,进行导入之后,界面自动切换
选择任务 -> serve -> 点击开始运行,就可以看到项目的具体运行情况,文件大小、包的依赖、运行时间,服务地址等等。
build 是进行打包的。
5.2、项目配置
之前修改配置信息的时候,我们需要在代码的配置文件中修改,vue-cli 3提供的图形化界面管理工具,可以直接在页面上修改配置信息。
配置信息分别如下图:
特殊说明下:启动运行时编译
我们上篇文章介绍 Runtime+compiler 与 Runtime-only区别,启动运行时编译 其实就是选择Runtime-only 模式。
5.3、依赖包安装
我们选择依赖选项,就会展示项目当前的运行依赖和开发依赖。如图所示:
之前我们需要安装依赖的时候,运行命令去安装,如:我们需要安装vue-router的时候,需要使用命令:
npm install vue-router --save-dev
但是现在就不需要了,只需要点击 “安装依赖”,搜索 vue-router,选择运行依赖或开发依赖,然后点击安装就可以了,不需要我们记住命令。
5.4、安装插件
插件与依赖包有些类型,直接点击添加,安装就可以了。
图形化界面管理工具使用起来还是很方便的,推荐使用哦!小编今日分享就要介绍了,喜欢的可以点赞关注不迷路,感谢支持!
前端开发3年了,竟然不知道什么是 Vue 脚手架?(下)的更多相关文章
- 前端开发3年了,竟然不知道什么是 Vue 脚手架?(上)
一.脚手架认识和使用前提 CLI 是什么意思? CLI -- Command-Line Interface 命令行界面,俗称脚手架. 脚手架就是一个大概的框架,是建筑学上的一个概念. 1.1.什么是V ...
- Web前端开发实战6:CSS实现导航菜单结合二级下拉式菜单的简单变换
前面几篇博文都在讲导航菜单和二级下拉式菜单,事实上有非常多方法都能够实现的.详细的情况还要视情况而定. 在后面学习到jQuery框架之后,会有更丰富的动画效果.因为在学习Ajax和jQuery的初步阶 ...
- Visual Studio 2015初体验——前端开发工作的问题
前言 因为后台项目开发适用的VS2015,为了跟后台开发配合,前端部门也统一从VS2013升级到了VS2015. 因为C盘空间不足要先卸载,这里就不说卸载2013时花了多长时间,只说安装2015时用了 ...
- 前端开发 vue,angular,react框架对比2
在过去一年里,前端开发发展迅速,前端工程师的薪资亦是水涨船高.2019 更是热度不减,而作为近年来尤为热门的前端框架,Vue.js 自是积累了大量关注.那么,Vue.js 是适合你的框架吗? ...
- Web前端开发的就业前景怎么样,薪资待遇如何
信息技术的迅速发展,使IT技术者们赶上了一个百年难遇的好机会,尤其是国家出台了“互联网+”的政策后,更是催生了IT行业的就业空间,使其呈现爆发性增长. 如今,微信逐渐成为了大家主要的交流工具,随着各种 ...
- Vue.js高效前端开发知识 • 【目录】
持续更新中- 章节 内容 实践练习 Vue.js高效前端开发 • (实践练习) 第1章 Vue.js高效前端开发 • [ 一.初识Vue.js ] 第2章 Vue.js高效前端开发 • [ 二.Vue ...
- 听说你在从事前端开发?那这10个JavaScript的优化问题你不得不知道!
JavaScript的高效优化一直都是我们前端开发中非常重要的工作,也是很多开发人员无法做好的一部分内容,今天我总结了10个优化问题,大家可以参考来做优化,这其中很多问题都是大家经常遇到的哦. ==和 ...
- 总结:Mac前端开发环境的搭建(配置)
新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...
- 淘宝前端工程师:国内WEB前端开发十日谈
一直想写这篇"十日谈",聊聊我对Web前端开发的体会,顺便解答下周围不少人的困惑和迷惘.我不打算聊太多技术,我想,通过技术的历练,得到的反思应当更重要. 我一直认为自己是" ...
随机推荐
- go语言 切片表达式
切片表达式 切片的底层就是一个数组,所以我们可以基于数组通过切片表达式得到切片. 切片表达式中的low和high表示一个索引范围(左包含,右不包含),得到的切片长度=high-low,容量等于得到的切 ...
- 虚拟机VMWare开机黑屏 无法进入系统
参考了: https://blog.csdn.net/x534119219/article/details/79497264 可能方案一: 关闭VMware Workstation加速3D图形设置 可 ...
- 已知三角形ABC为锐角三角形,求 sinA + sinB·sin(C/2) 的最大值。
已知三角形ABC为锐角三角形,求 sinA + sinBsin(C/2) 的最大值. 解:Δ := sinA + sinB·sin(C/2) = sin(B+C) + sinB·sin(C/2) = ...
- golang net/http包
http协议 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准.设计HTTP最初的目的是为 ...
- thrift的介绍及其使用
什么是thrift Thrift是Facebook于2007年开发的跨语言的rpc服框架,提供多语言的编译功能,并提供多种服务器工作模式:用户通过Thrift的IDL(接口定义语言)来描述接口函数及数 ...
- VS Code闪现,巨头纷纷入局的Web IDE缘何崛起?
我发了,我装的. 就在前几天,微软简短的发布了Visual Studio Code for the Web 的公告,而没过一阵,这则公告就被删除了,现在点经相关内容已经是404状态了.虽然公告的内容已 ...
- Python 高级特性(3)- 列表生成式
range() 函数 日常工作中,range() 应该非常熟悉了,它可以生成一个迭代对象,然后可以使用 list() 将它转成一个 list # 判断是不是迭代对象 print(isinstance( ...
- 浅析mybatis中${}和#{}取值区别
mybatis作为一个轻量级的ORM框架,应用广泛,其上手使用也比较简单:一个成熟的框架,必然有精巧的设计,值得学习. 在使用mybatis框架时,在sql语句中获取传入的参数有如下两种方式: ${p ...
- Elasticsearch-head插件的安装与配置
第一种: 通过浏览器添加插件 通过chrome安装插件的方式提供一个可操作es的图形化界面. 在chrome 浏览器中,通过"扩展程序" 添加 elasticsearch head ...
- Dart简易教程 (1)---数据类型 运算符,类转换换
从下面开始学习DART编程 以下是一个简单的示例: main(){ var number = 42; print(number);}程序说明,dart是一个强大的脚本类语言,可以不预先定义变量类型 , ...