一份超级详细的Vue-cli3.0使用教程[赶紧来试试!]

简介: 前言在vue-cli 2.X的时候,也写过一篇类似的文章,在八月份的时候vue-cli已经更新到了3.X,新版本的脚手架,功能灰常强大,试用过后非常喜欢,写篇教程来帮助各位踩一下坑。主要内容:零配置启动/打包一个.vue文件详细的搭建过程重点推荐:使用图形化界面创建/管理/运行项目安装:卸载旧版本:如果你事先已经全局安装了旧版本的vue-cli(1.x 或 2.x),你需要先卸载它:npm uninstall vue-cli -g

前言

在vue-cli 2.X的时候,也写过一篇类似的文章

,在八月份的时候vue-cli已经更新到了3.X,新版本的脚手架,功能灰常强大,试用过后非常喜欢,写篇教程来帮助各位踩一下坑。


主要内容:

  1. 零配置启动/打包一个.vue文件
  2. 详细的搭建过程
  3. 重点推荐:使用图形化界面创建/管理/运行项目

安装:

卸载旧版本:

如果你事先已经全局安装了旧版本的vue-cli(1.x 或 2.x),你需要先卸载它:

npm uninstall vue-cli -g

Node版本要求:

3.x需要在Node.js8.9或更高版本(推荐8.11.0+),点击这里可以安装node

大多数人都安装过了node,使用下面的命令行查询你的node版本:

node -v

如果你的版本不够,可以使用下面的命令行来把Node版本更新到最新的稳定版

npm install -g n // 安装模块 这个模块是专门用来管理node.js版本的
n stable // 更新你的node版本

mac下,更新版本的时候,如果提示你权限不够:

sudo n stable // 我就遇到了

安装vue-cli:

npm install -g @vue/cli // 安装cli3.x
vue --version // 查询版本是否为3.x

如果cli3.x用的不舒服,cli3也能使用2.x模板

npm install -g @vue/cli-init // 安装这个模块
// 就可以使用2.x的模板:vue init webpack my-project

零配置启动/打包一个.vue文件:

安装扩展:

npm install -g @vue/cli-service-global

安装完扩展之后,可以随便找个文件夹建一个如下方示例的.vue文件,然后跑起来:

vue serve App.vue // 启动服务
vue build App.vue // 打包出生产环境的包并用来部署

如下图,只需一个.vue文件,就能迅速启动一个服务:

如图所示,服务启动的时候回生成一个node_modules包,稍微测试了一下,服务支持ES6语法和热更新,打包的时候会生成一个dist文件夹。(新建一个test.vue文件也只有一个node_modules/dist文件夹)

这是个很棒的功能,用于开发一个库、组件,做一些小demo等都是非常适合的

image.png

第一次创建项目:

1. 命令行:

vue create hello-cli3
  • hello-cli3是文件夹名字,如果不存在会自动创建文件夹,如果存在会安装到那个文件夹中。
  • 相比2.x的时候需要自己手动创建一个文件夹,这里也算是一个小优化吧。

2. 选择模板:

  • 一开始只有两个选项: default(默认配置)和Manually select features(手动配置)
    默认配置只有babeleslint其他的都要自己另外再配置,所以我们选第二项手动配置。
  • 在每次选择手动配置之后,会询问你是否保存配置,也就是图片中的koro选项,这样以后我们在进行创建项目的时候只需使用原先的配置就可以了,而不用再进行配置。

image.png

3. 选择配置:

  • 根据你的项目需要来选择配置,空格键是选中与取消,A键是全选
? Check the features needed for your project: (Press <space> to select, <a> to toggle all, <i> to invert selection) 
  // 检查项目所需的功能:(按<space>选择,<a>切换所有,<i>反转选择)
  >( ) TypeScript                                 // 支持使用 TypeScript 书写源码
   ( ) Progressive Web App (PWA) Support          // PWA 支持
   ( ) Router                                     // 支持 vue-router
   ( ) Vuex                                       // 支持 vuex
   ( ) CSS Pre-processors                         // 支持 CSS 预处理器。
   ( ) Linter / Formatter                         // 支持代码风格检查和格式化。
   ( ) Unit Testing                               // 支持单元测试。
   ( ) E2E Testing

4. 选择css预处理器:

  • 如果你选择了Css预处理器选项,会让你选择这个
? Pick a CSS pre-processor (PostCSS, Autoprefixer and CSS Modules are supported by default):
  // 选择CSS预处理器(默认支持PostCSS,Autoprefixer和CSS模块):
  > SCSS/SASS
    LESS
    Stylus

5. 是否使用路由的history模式:

  • 这里我建议选No,这样打包出来丢到服务器上可以直接使用了,后期要用的话,也可以自己再开起来。
  • 选yes的话需要服务器那边再进行设置。
Use history mode for router? (Requires proper server setup for index fallback in production) 
  // 路由使用history模式?(在生产环境中需要适当的服务器设置以备索引)

6. 选择Eslint代码验证规则:

> ESLint with error prevention only
  ESLint + Airbnb config
  ESLint + Standard config
  ESLint + Prettier

7. 选择什么时候进行代码规则检测:

? Pick additional lint features: (Press <space> to select, <a> to toggle all, <i> to invert selection)
  >( ) Lint on save // 保存就检测
   ( ) Lint and fix on commit // fix和commit时候检查

8. 选择e2e测试:

? Pick a E2E testing solution: (Use arrow keys)
❯ Cypress (Chrome only) 
  Nightwatch (Selenium-based)

9. 把babel,postcss,eslint这些配置文件放哪:

  • 通常我们会选择独立放置,让package.json干净些
? Where do you prefer placing config for Babel, PostCSS, ESLint, etc.? (Use arrow keys)
  > In dedicated config files // 独立文件放置
    In package.json // 放package.json里

10. 是否保存配置:

Save this as a preset for future projects? (Y/n) // 是否记录一下以便下次继续使用这套配置
// 选保存之后,会让你写一个配置的名字:
Save preset as:  name // 然后你下次进入配置可以直接使用你这次的配置了

11. 下载依赖

12. webpack配置的目录不见了:

一起来看一下新项目的结构(下图),会发现2.x的webpack配置的目录不见了,也就是没有build、config这两个文件夹了:

  • 这种方式的优势对小白来说非常友好,不会一上来就两个文件夹,一堆文件,看着脑袋都大了。
  • 然后在引用别人的配置的时候,也非常方便,直接将文件复制过来就好了。
  • 在自定义一下webpack的配置,我们需要在根目录新建一个vue.config.js文件,文件中应该导出一个对象,然后进行配置,详情查阅官方文档
// vue.config.js
  module.exports = {
    // 选项...
  }
  • 还有一些小变动像:static文件夹改为public了,router文件夹变成了单个文件之类的(我之前一直这么做,嘿嘿)。

image.png

13.启动项目:

  • 启动项目:npm run serve // 不是之前的 npm run dev
  • 打开http://localhost:8080

image.png

使用图形化界面创建/管理/运行项目:

启动图形化界面

vue ui
  • 这是个全局的命令 在哪个文件夹都可以打开
  • 界面(下图),重要的项目可以收藏起来(置顶):

image.png

创建项目和导入项目:

  1. 目录选中之后,导入项目点击下面的导入就可以了。

image.png

2.创建项目,填一个文件夹名字:

image.png


3.然后选一下预先保存好的设置就可以了,非常方便,建议采用图形界面来创建项目:

image.png

项目管理:

当我们点击hello -cli3项目,就会进入项目管理的界面

1. 仪表盘:

  • 这个仪表盘,主要是为了我们操作方便而设置的
  • 可以点击右上角的按钮,来添加/移动这些功能选项。

image.png

2. vue-cli3.x插件:

image.png

  • cli3插件安装的过程:

image.png

3. 项目依赖

  • 直接在图形界面管理依赖很舒服了!
  • 安装依赖的时候,要记得选择开发依赖/运行依赖!

image.png

4. 项目配置

  • 可以对cli进行一些配置、Eslint规则修改:

    image.png

5. 任务:

  • serve 运行项目,点击直接运行,再也不用输入命令了!
  • 可以清楚的看到各个模块用了多久,方便我们针对性的进行优化

image.png

  • build 打包项目:这里主要展示了图表的功能,比以前2.x生成报告更加直观,超级棒!

image.png

6. 其他

  • 夜间风格界面,我更喜欢这个界面
  • 直接打开编辑器,很棒了!
  • 还有一些乱七八糟的按钮

image.png

结语

可以说很认真了,希望大家看完能够有些收获,赶紧试试新版的vue-cli吧


目录
相关文章
|
弹性计算 黑灰产治理
阿里云服务器续费流程及续费优惠券使用介绍(2023更新)
阿里云服务器怎么续费?新老用户分别有什么优惠?目前新用户续费阿里云服务器指定ECS实例可享4.5折优惠折扣,老用户开通包年自动续费享1次6.5折,开通包月自动续费享3次7.5折,现在续费还可以领取和使用阿里云续费优惠券,本文为大家介绍一下阿里云服务器续费流程及续费过程中如何使用续费优惠券。
6582 0
阿里云服务器续费流程及续费优惠券使用介绍(2023更新)
|
安全 搜索推荐 数据可视化
element ui table 表格高度自适应
设置element ui table 表格高度自适应
2800 0
|
8月前
|
Web App开发 前端开发 JavaScript
前端新利器:CSS容器查询——让组件真正“自适应
前端新利器:CSS容器查询——让组件真正“自适应
471 83
|
8月前
|
人工智能 自然语言处理 供应链
走进麦当劳·会数据同学:解锁AI在企业应用的深度价值
麦当劳中国进入“金拱门时代”,加速数字化转型,计划未来4年投入40亿元用于研发创新。携手阿里云与瓴羊,构建以客户为中心的数字系统,优化消费体验与门店运营,打造全球数字化标杆。
296 0
|
7月前
|
JSON API 开发者
闲鱼商品详情API数据解析(附代码)
闲鱼商品详情API(goodfish.item_get)支持通过商品ID获取标题、价格、描述等信息,适用于比价、推荐系统及市场分析。接口支持GET/POST请求,返回JSON格式数据,并提供Python调用示例,便于开发者快速集成。
|
负载均衡 网络协议 Linux
LVS,软负载均衡
LVS(Linux Virtual Server)是一项广泛应用的负载均衡技术,由章文嵩博士于1998年发起,自Linux 2.4.24版本起成为官方内核的一部分。LVS通过四层负载均衡技术实现高性能、高可用的服务器集群,支持多种调度算法和工作模式(如D-NAT、full-NAT、IP隧道、DR),适用于HTTP、数据库等应用。相比7层负载均衡器(如Nginx、HAProxy),LVS具有更高的并发处理能力和更低的资源消耗,适合大规模流量分发。本期文章详细介绍了LVS的工作原理、优势与不足,并对比了常见的负载均衡产品,帮助读者根据具体需求选择合适的解决方案。
1903 6
LVS,软负载均衡
|
12月前
|
算法 Linux 调度
理解CPU负载与使用率
**CPU使用率与负载简介** - **CPU使用率**:指CPU被占用的时间占总时间的比例,单核为直接比例,多核为各核心平均值。高使用率(如80%-90%)表示CPU繁忙,可能导致系统变慢;低使用率(如10%-20%)则表示系统运行流畅。 - **CPU负载**:指等待CPU处理的任务数量,通常显示1分钟、5分钟和15分钟的平均值。高负载意味着任务排队多,可能造成系统卡顿;正常负载下系统运行顺畅。负载反映任务量,使用率反映实际占用时间,两者可不同步。
1938 5
|
存储 前端开发 Java
Element el-upload 文件上传/图片上传/拖拽上传/附带参数/附带请求头部详解
文目录 1. 前言 2. 基本用法 2.1 前端部分 2.2 后端部分 2.3 获取后端返回信息 3. 外观功能介绍 3.1 拖拽上传 3.2 显示图片 3.3 设置文件列表样式 3.4 显示提示信息 4. 事件功能介绍 4.1 限制上传文件数量 4.2 限制上传文件类型和大小 4.3 移除文件处理 4.4 手动上传 5. 附带参数 6. 附带请求头部 7. 小结
8096 0
|
机器学习/深度学习 人工智能 搜索推荐
语音识别技术的现状与未来展望
【6月更文挑战第15天】**语音识别技术现状与未来:** 随AI发展,语音识别精度与速度大幅提升,应用广泛,从手机助手到智能家居。深度学习驱动技术进步,跨语言及多模态交互成为新趋势。未来,精度、鲁棒性将增强,深度学习将进一步融合,个性化和情感化交互将提升用户体验。跨领域融合与生态共建将推动技术普及,为各行业带来更多智能解决方案。但同时也需关注技术伦理和社会影响。
1223 2

热门文章

最新文章