13. Vue CLI脚手架
一. Vue CLI 介绍
1. 什么是Vue CLI?
Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统。Vue CLI 致力于将 Vue 生态中的工具基础标准化。它确保了各种构建工具能够基于智能的默认配置即可平稳衔接,这样你可以专注在撰写应用上,而不必花好几天去纠结配置的问题。与此同时,它也为每个工具提供了调整配置的灵活性。
- CLI的全拼是Command-Line Interface, 命令行界面, 俗称脚手架
- 它是一个专门为单页面应用快速搭建繁杂的脚手架,可以轻松的创建新的应用程序,而且可用于自动生成vue和webpack的项目模板。
- 如果开发大型项目, 我们必然需要使用Vue CLI
- Vue CLI为我们提供了清晰的代码目录结构, 项目结构、部署, 热加载,单元测试等功能。可以提高开发者的工作效率。
2. Vue CLI依赖的环境
依赖NodeJS和NPM:
- 安装nodeJS, 默认会安装NPM, NodeJs的版本通常要在8.9以上。
- NPM的全称是: Node Package manager 。node包的管理和分发工具
- 国内npm有时很慢, 可以安装cpnm镜像, 这是一个淘宝npm镜像。
使用淘宝定制的cnpm命令行工具替代默认的npm工具
npm install -g cnpm --registry=https://registry.npm.taobao.org
这样就可以使用cnpm来安装模块了
使用淘宝定制的cnpm命令行工具替代默认的npm工具
npm install -g cnpm --registry=https://registry.npm.taobao.org
依赖webpack
- Vue.js官方脚手架工具使用了webpack模板, 对所有资源进行了压缩优化,在开发过程中提供了一套完整的功能, 提高开发效率
- webpack的全局安装
npm install webpack -g
- 详细了解webpack可以参考文章----vue之webpack打包原理和用法详解
二. Vue CLI 脚手架安装
第一步: 安装NodeJs
官网下载nodejs: https://nodejs.org/en/
然后解压安装, 查看nodejs的版本
node -v
第二步: 安装全局webpack
webpack有全局安装和局部安装. 全局安装是所有服务共有. 局部安装是对某个项目单独安装webpack的版本. 全局webpaack和局部webpack版本可以不一样
npm install webpack -g
第三步: 安装局部本地webpack
安装局部webpack
npm install webpack --save-dev
第四步:安装Vue Cli 脚手架
这里需要说名Vue CLI版本的问题. 现在在用的Vue CLI的版本有2, 3, 4. 他们到底有什么区别呢?
vue2和vue3的差别很大, vue3和vue4的差别较小.下面详细说说他们的区别
1. vue2, vue3, vue4的区别
- 安装, 卸载
vue-cli2
全局安装:npm install -g vue-cli 或 cnpm install -g vue-cli
卸载:npm uninstall -g vue-cli 或 cnpm uninstall -g vue-cli
vue-cli3 和vue-cli4
全局安装:npm install -g @vue/cli@版本号 或 cnpm install -g @vue/cli@版本号
卸载:npm uninstall -g @vue/cli@版本号 或 cnpm uninstall -g @vue/cli@版本号
可以使用@指定版本号, 如果不指定版本号, 默认下载的是4的版本
- 项目创建
vue-cli2:
vue init webpack demo
vue-cli3和vue-cli4
vue create demo
- 项目结构
vue-cli2:
vue-cli3和vue-cli4:
- 项目启动
vue-cli2:
npm run dev
vue-cli3和vue-cli4
npm run serve
以上区别都是宏观表现上的不同, 具体到代码级别, 我们会后面继续说
因为现在vue2,3,4都有使用, 所以, 我们学的时候都会学习.
2 安装vue脚手架
vue-cli官网: https://cli.vuejs.org/,
执行安装命令:
npm install -g @vue/cli
查看安装的版本
vue -V 或者 vue --version
b)安装旧版本的vue
使用旧版本的 vue init 功能, 可以全局安装一个桥接工具
npm install -g @vue/cli-init
然后, 在执行
三、Vue CLI脚手架搭建项目
我们安装的时候, 安装vue4, 但我们的项目可能是老版本的项目. 或者我们想要创建老版本的项目. 我们可以在安装一个vue的桥接工具.
1. 搭建vue2的项目.
下面, 我们想要创建一个vue2的项目,
首先: 安装vue的桥接工具.
npm install -g @vue/cli-init
现在就可以创建vue2的项目了.
接下来创建项目
vue init webpack my-project
首次创建项目, 会去下载component组件. 这个下载过程很慢, 我们可以采用离线下载cli-component的方式.
2. 离线安装vue-cli
通过vue-cli工具命令vue init webpack vuedemo创建vue项目的时候报错,提示连接超时
vue-cli · Failed to download repo vuejs-templates/webpack: connect ETIMEDOUT 192.30.253.112:443
解决办法有两个
a. 使用cnpm. 安装一个淘宝镜像
b. 下载离线组件包, 然后离线安装
这里重点说一下第二个方案:
第一步: github下载vue-cli component
https://github.com/vuejs-templates/webpack
如果打开github很慢, 可以试用github加速器打开
https://toolwa.com/github/
第二步: 下载之后的压缩包为webpack-版本号.zip,我们解压之后,需要更改目录名为webpack
然后在用户目录下创建一个文件夹: .vue-templates, 注意ve-templates前面的点(.)
我们再进行vue init webpack vuedemo命令的时候,需要带上参数--offline表示离线初始化
vue init webpack vuecli2 --offline
然后会提示有很多选项, 根据需要选择.
第三步: 然后运行命令启动项目即可.
npm run dev
看到下面的页面就成功了
四. vue脚手架安装时的含义及项目结构
1. vue脚手架安装时各项的含义
我们安装vue-cli脚手架的时候会有很选项, 那这些选项应该如何选择呢?如果我们知道他们是什么含义,就知道该怎么选择了.下面就来说说每一项是什么含义
1. Project name: 输入项目的名称
2. Project description: 项目描述
3. Author: 作者姓名,邮箱. 这里是来源于我们设置的全局的git用户名和邮箱
4. Vue build: 构建方式. 构建方式有两种,如下所示:
- runtime + compiler: 推荐大多数用户选择这种方式
- vue脚手架安装时的含义: 这个比runtime+compiler的方式更轻量, 但是只允许在.vue结尾的文件中使用模板
初步看来, 好像我们开发环境应该选择runtime+compiler, 生产环境使用Runtime-only更合适. 那具体如何呢? 后面我们来验证一下:
在template这行最后面多了一个逗号, 系统编译出错
5. Install vue-router: 是否安装vue-router
这里我选择的否, 因为刚开始用不到, 用到的时候, 我再加上
6. Use ESLint to lint your code: 是否对你的代码使用ESLint规范
这个含义是: 如果我们对代码使用了es规范, 那么如果不符合规范,在编译的时候就会报错. 这里可以选择, 也可以不选择, 刚开始学习,我们可以先不使用.
用和不用的效果:当代码中有不规范的内容时,就会报错. 比如在行尾加;
手动开启|关闭ESlint
修改index.js总配置文件, 修改参数useEslint来控制是否开启Eslint代码校验
useEslint: true,
7. Pick on ESLint preset: 选择使用eslint的标准
也就是格式化代码的标准. 有三种选择, 通常我们都选择Standard
8. Set up unit tests: 是否使用单元测试
刚开始我们不需要单元测试, 所以选择no
9. Setup e2e tests with Nightwatch: 是否设置端到端测试?
我们刚开始也不需要, 所以设置为no
10. Should we run npm install for you: 使用什么命令. 有三种选择
通常我们选择第一种npm
13. Vue CLI脚手架的更多相关文章
- vue cli脚手架使用
1.安装nodejs,npm https://www.cnblogs.com/xidianzxm/p/12036880.html 2.安装vue cli sudo npm install -g @vu ...
- 使用Vue CLI脚手架搭建vue项目
本次是使用@vue/cli 3.11.0版本搭建的vue项目 1. 首先确保自己的电脑上的Node.js的版本是8.9版本或者以上 2. 全局安装vue/cli npm install @vue/cl ...
- vue.cli脚手架初次使用图文教程
vue-cli作用 vue-cli作为vue的脚手架,可以帮助我们在实际开发中自动生成vue.js的模板工程. vue-cli使用 !!前提:需要vue和webpack 安装全局vue-cli npm ...
- node.js和vue cli脚手架下载安装配置方法
一.node.js安装以及环境配置 1.下载vue.js 下载地址: https://nodejs.org/en/ 2.安装node.js 下载完成后,双击安装包开始安装.安装地址最好换成自己指定的地 ...
- 关于Vue.cli 脚手架环境中引入Bootstrap时,table表格样式缺失的解决办法
Vue+bootstrap不能正常使用table的样式 环境:下载官网的本地bootstrap包,然后在vue 的index.html引入bootstrap的css和js环境 问题描述:1. vue里 ...
- vue cli 脚手架上多页面开发 支持webpack2.x
A yuri demo for webpack2 vue multiple page.我看到有一些项目多页面项目是基于webapck1.0的,我这个是在webpack2.x上布置修改. 项目地址: ...
- 用 vue cli 脚手架搭建单页面 Vue 应用(进阶2)
1.配置 Node 环境. 自行百度吧. 安装好了之后,打开 cmd .运行 node -v .显示版本号,就是安装成功了. 注:不要安装8.0.0以上的版本,和 vue-cli 不兼容. 我使用的 ...
- vue.js---利用vue cli脚手架工具+webpack创建项目遇到的坑
1.Eslint js代码规范报错 WARNING Compiled with 2 warnings 10:43:26 ✘ http://eslint.org/docs/rules/quotes St ...
- vue cli脚手架项目利用webpack给生产环境和发布环境配置不同的接口地址或者不同的变量值。
废话不多说,直接进入正题,此文以配置不同的接口域名地址为例子 项目根目录下有一个config文件夹,基础项目的话里面至少包括三个文件, 1.dev.env.js 2.index.js 3.prod.e ...
随机推荐
- OpenStack Train版-10.安装neutron网络服务(网络节点:可选)
可选:安装neutron网络服务节点(neutron01网络节点192.168.0.30)网络配置按照官网文档的租户自助网络 配置系统参数 echo 'net.ipv4.ip_forward = 1' ...
- 局部变量 static new 结构体指针
struct ListNode { int val; ListNode* next; ListNode(int x) : val(x), next(NULL) {} }; 有一个函数利用LisNode ...
- vue-router离开当前页面提示未保存,解决在使用beforeRouteLeave弹窗多次闪现问题
在使用beforeRouteLeave时要注意两点: 1. next(false)阻止路由继续进行,若不先阻止,会多次执行守卫中的代码 2. 利用setTimeout延时触发弹窗,避免出现闪现情况
- 深入剖析JavaScript中的数据类型判断(typeof instanceof prototype.constructor)
关于JavaScript中的类型判断,我想大部分JavaScripter 都很清楚 typeof 和 instanceof,却很少有人知道 constructor,以及constructor与前面二 ...
- Keras读取保存的模型时, 产生错误[ValueError: Unknown activation function:relu6]
Solution: from keras.utils.generic_utils import CustomObjectScope with CustomObjectScope({'relu6': k ...
- 如何在github实现 github pages (暨个人blog) websites for you and your projects.
http://xgqfrms.github.io/xgqfrms/ 步骤如下: 1.GitHub Pages https://pages.github.com/ 2.Generate a site, ...
- node.js 怎么扩大默认的分配的最大运行内存
node.js 怎么扩大默认的分配的最大运行内存 $ node --max-old-space-size=4096 app.js $ NODE_OPTIONS=--max-old-space-size ...
- js var & let & const All In One
js var & let & const All In One js var & let & const 区别对比 var let const 区别 是否存在 hois ...
- flutter 长按图片保存到手机
main.dart import 'dart:io'; import 'package:flutter/material.dart'; import 'package:http/http.dart' ...
- Flutter: The getter 'futureDynamicType' was called on null.
> flutter packages pub upgrade