第二十九节:Vue Cli: Vue脚手架


前言:关于Vue CLI版本介绍

关于旧版本

Vue CLI 的包名称由 vue-cli 改成了 @vue/cli。 如果你已经全局安装了旧版本的 vue-cli (1.x 或 2.x),你需要先通过 npm uninstall vue-cli -gyarn global remove vue-cli 卸载它。

Node 版本要求

Vue CLI 需要 Node.js 8.9 或更高版本 (推荐 8.11.0+)。你可以使用 nvmnvm-windows 在同一台电脑中管理多个 Node 版本。


1. Vue CLI的了解

Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统.


1.1 Vue CLI 说明
  1. CLI 全称就是 Command-Line Interface, 翻译为命令行界面,俗称脚手架

  2. Vue CLI就是一个官网发布的vue.js项目的脚手

  3. 使用vue-cli可以帮我们快速的搭建Vue开发环境以及对应的webpack配置

用现实生活中的例子:

比如你要盖一栋大楼,大楼外侧的脚手架是必须要搭建的, 每一栋大楼都需要这些脚手架,这些脚手架如果每一次都需要一点一点搭建的话就会非常繁琐和耗时,如果,有人提前帮你把这些必要的脚手架搭建好了,你只需要注重点关注在大楼建设上就可以了

同样的,我们开发vue项目,需要一些诸如webpack这样的配置,如果每次都要自己从头处理就很繁琐,那么官方就帮我们把这些必要的配置好,生成了脚手架模板, 我们直接拿过来使用,这就是脚手架,在脚手架上直接搭建自己的项目,如果发现脚手架有些不能满足我们的需要,也可以自己手动修改脚手架配置

一言以蔽之: 脚手架就是搭建项目的基础模板


1.2 什么时候需要用到脚手架

如果你的项目比较简单,就是一些基本的将数据渲染到页面上,那么你不要Vue CLI脚手架

只有当你开发大型项目时,就必须要用到Vue CLI脚手架了

因为大型项目需要考虑代码目录结构,项目结构,部署以及热更新等很多琐碎的事情,那么这些事情都交给脚手架来配置好, 我们直接使用脚手架就可以了


2. 安装vue CLI

注意在安装Vue CLI是一定要提前安装node.


2.1 安装 Vue CLi

可以使用下列任一命令全局安装最新的CLI:

npm install -g @vue/cli
# or
yarn global add @vue/cli

安装之后,你就可以在命令行中访问 vue 命令。你可以通过简单运行 vue,看看是否展示出了一份所有可用命令的帮助信息,来验证它是否安装成功。
当然也可以通过版本好来验证是否安装成功


2.2 查看版本号命令

使用下面命令打印版本号.

> vue --version
> # or 简写
> vue -V

如果可以正常打印版本号说明vue CLI 脚手架安装成功,

同时我们也可以通过版本号来确定是不是你需要安装的版本

查看vuecli版本号_图1.png

最新的vue CLI版本已经是4.3.1了


2.3 使用CLI项目模板

注意Vue CLI 3.X 和4.X的脚手架的模板和Vue CLI2.X 完全不同,

如果你还想使用Vue CLI2.X的脚手架模板,就需要参考官网给出的处理方案

官网关于使用 2.X 模板的方法

官网使用cli2的方式_图2.png

至此Vue CLI的安装就已经完成了, 那么接下来就让我们好好看看CLI2.X的项目模板和CLI3.X项目模板


3. 创建Vue CLI 2的项目

3.1 初始化化Vue CLI2项目

使用下面的命令初始化vue CLI2的项目

$ vue init webpack myvue

初始化项目cli2项目图

通过cli2模板创建项目_图3.png


3.2 运行项目

通过上面命令创建项目成功以后,

进入到项目里,然后通过npm run dev运行项目

其实在初始化Vue CLI2项目成功以后也会给我们对应的提示

安装成功后提示:

启动项目_图4.png

因此我们可以通过命令运行我们项目

运行项目_图5.png

编译成功以后,会提示:你的项目运行在http://localhost:8080地址

这样我们就可以在浏览器地址栏输入地址运行项目

项目运行成功_图6.png


3.3 项目目录

项目已经成功启动,那么接下来我们就来好好看看项目模板的目录结构

cli2项目模板目录_图7.png



4. Vue CLI3

4.1 CLI3 和 CLI2 版本的区别
  1. cli3 是基于webpack4开发的,cli2是还是基于webpack3开发的
  2. cli3 的设计原则是'0配置',移除了根目录下build和config的webpack 配置文件目录
  3. cli3 提供了vue ui命令,提供可视化配置,更加人性化
  4. 移出了static 文件夹,增加了 public文件夹,并且将index.html移动到public目录中


4.2 CLI3的安装命令

通过下面的命令初始化Vue CLI3的工程项目

$ vue create myproject


4.3 CLI3初始化项目中的配置介绍
4.3.1 选择配置方式

可以使用默认的配置,也可以自己配置需要安装的内容

自己配置后还可以保存,下次在初始化项目时就可以使用上一次配置

选择配置方式_图8.png


4.3.2 自定义配置

自定义配置项目,选择自己要安装的配置来初始化项目

自定义配置项选择_图9.png


4.3.3 配置保存选择

配置选择完毕后,会询问你是将配置单独生成文件,还是追加到package.json 文件中

建议使用单独配置文件,这样会比较方便修改配置

配置项位置的选择_图10.png


4.3.4 是否保存配置

是否将本次初始化项目的配置保存起来,以便下次初始化项目时直接使用

保存配置_图11.png


4.3.5 给保存的配置命名

如果选择保存本次配置,就给配置命名

保存配置确定名称_图12.png


4.3.6 初始化完成

当项目配置初始化完毕后,提示你进入项目,并且告知启动项目的终端命令

安装成功_图13.png


4.3.7 有保存配置的初始化项目

如果之前有保存过配置,那么在你初始化项目的时候,就会让你自己选择,

可以使用默认配置,或者自定义配置,也可以使用上一次保存的自定义配置

保存配置_图14.png


4.3.8 项目重名

项目重名就会提示,

有三种选择: 覆盖原来的项目, 与原理的项目合并,或者取消本次初始化项目

项目重名_图15.png


4.3.9 启动项目

通过yarn serve命令启动项目

启动项目_图16.png


4.4 CLI3工程项目目录
cli3项目目录_图17.png

我们会发现CLI3的项目目录中看不到webpack的配置


5. CLI3 的配置

默认在CLI3的项目目录中是看不到配置文件的,那么有的时候我们需要修改配置文件怎么办呢,

接下来就看看如何修改配置


5.1 通过可视化界面修改配置

CLI3中提供了一个可视化操作,终端命令为vue ui

启动可视化操作界面

$ vue ui

在可视化界面中找到配置,

可视化界面修改配置_图18.png

然后就可以在这里就改项目配置为了


5.2 在项目中修改配置

在根文件下创建vue.config.js文件, 就可以在这个文件中定义需要修改的配置

cli3会自动将vue.config.js文件中的配置和默认的配置进行合并


例如:配置示例:

module.exports = {
    baseUrl: "/" , //根路径
    outputDir : "dist", //构建输出目录 ,在npm run build 打包生成的文件夹的名字
    assetsDir: "assets", //静态资源目录(js,css,img)
    lintOnSave : false, // 是否开启eslint保存检测,true | false | error  默认使用false 不打开
    devServer: {
        open: false,    // npm run server 运行时是否自动在浏览器中打开
        host: "localehost",  //主机名字
        prot: 8080,    //端口号 默认时8080
        https: false, //是否启用https协议,最好不使用 默认使用http协议
        hotOnly: false, //热更新,就用false
    
        //重点时这里跨域
        proxy: {
            '/api': {
                target: "http://localhost:5000/api/",
                ws: true,
                changOrigin: true,
                pathRewrite: { 
                    "^/api": ""
                }
            }
        },
        
        //before 在所有的其他中间件之前,提供自定义中间件功能,这可以用来配置自定义处理程序
        before(app) {
            app.get("/api/goods",(req,res) => {
                res.json(goods);
            })
        }
    }
    
}


6. 单文件组件测试

我们可以通过一个全局的包对于一些特定的.vue文件(也就是单文件组件)进行单独的测试

6.1 安装全局的cli-service
$ npm install -g @vue/cli-service-global
6.2.独立运行vue文件
//vue serve vue文件
vue serve hello.vue

这样就可以单独测试某些组件了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,080评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,422评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,630评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,554评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,662评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,856评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,014评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,752评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,212评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,541评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,687评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,347评论 4 331
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,973评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,777评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,006评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,406评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,576评论 2 349