使用vue-cli(vue脚手架)快速搭建项目的方法


Posted in Javascript onMay 21, 2018

vue-cli 是一个官方发布 vue.js 项目脚手架,使用 vue-cli 可以快速创建 vue 项目。这篇文章将会从实操的角度,介绍整个搭建的过程。

1. 避坑前言

其实这次使用vue-cli的过程并不顺利,反复尝试几次都遇到以下这个报错:

使用vue-cli(vue脚手架)快速搭建项目的方法

创建vue-cli工程项目时的报错

在网上查了很多资料才发现原来是node版本过低的问题,虽然没有找到官方对这个“过低”问题的解释,但是根据国外网友的经验之谈,应该是至少使用node6,我将node4更新至node8之后确实没有报错了,顺利搭建。相关答疑帖:https://github.com/vuejs/vue-cli/issues/618

使用vue-cli(vue脚手架)快速搭建项目的方法

确认node与npm的版本

将这个放在最前面说是希望大家在搭建前,应该先确保将node更新至6以上,这样能少走一些弯路。下面开始正式介绍整个构建过程。

2. 使用 vue-cli 搭建项目

下面整个过程是基于已经安装node.js和cnpm的基础上,node.js如何安装就不在这里详说了。如何全局化安装cnpm,这里简单提一下:

npm install cnpm -g --registry=https://registry.npm.taobao.org

其实对于安装vue-cli,使用npm命令和cnpm命令都是可以的,个人觉得使用npm安装的比较慢,而且很可能会因为网络问题而出错,所以还是觉得使用cnpm稳一点。

(1)全局安装 vue-cli ,在命令提示窗口执行:

cnpm install -g vue-cli

使用vue-cli(vue脚手架)快速搭建项目的方法

安装vue-cli

出现以上提示表示vue-cli正常安装成功,可以正式创建vue-cli工程项目了。

(2)安装vue-cli成功后,通过cd命令进入你想放置项目的文件夹,在命令提示窗口执行创建vue-cli工程项目的命令:

vue init webpack

使用vue-cli(vue脚手架)快速搭建项目的方法

创建vue-cli工程项目

确认创建项目后,后续还需输入一下项目名称、项目描述、作者、打包方式、是否使用ESLint规范代码等等,详见上图。安装顺利执行后会,生成如下文件目录:

使用vue-cli(vue脚手架)快速搭建项目的方法

生成文件目录

(3)生成文件目录后,使用 cnpm 安装依赖:

cnpm install

使用vue-cli(vue脚手架)快速搭建项目的方法

安装依赖

(4)最后需要执行命令: npm run dev 来启动项目,启动完成后会自动弹出默认网页:

使用vue-cli(vue脚手架)快速搭建项目的方法

启动项目

使用vue-cli(vue脚手架)快速搭建项目的方法

启动项目

使用vue-cli(vue脚手架)快速搭建项目的方法

默认网页

到这一步,就算成功利用vue-cli搭建一个vue项目了,撒花 ~

3.目录结构及其对应作用

通过vue-cli搭建一个vue项目,会自动生成一系列文件,而这些文件具体是怎样的结构、文件对应起什么作用,可以看看下面的解释:

├── build/           # webpack 编译任务配置文件: 开发环境与生产环境
│  └── ...
├── config/           
│  ├── index.js        # 项目核心配置
│  └── ...
├ ── node_module/        #项目中安装的依赖模块
  ── src/
│  ├── main.js         # 程序入口文件
│  ├── App.vue         # 程序入口vue组件
│  ├── components/       # 组件
│  │  └── ...
│  └── assets/         # 资源文件夹,一般放一些静态资源文件
│    └── ...
├── static/           # 纯静态资源 (直接拷贝到dist/static/里面)
├── test/
│  └── unit/          # 单元测试
│  │  ├── specs/       # 测试规范
│  │  ├── index.js      # 测试入口文件
│  │  └── karma.conf.js    # 测试运行配置文件
│  └── e2e/          # 端到端测试
│  │  ├── specs/       # 测试规范
│  │  ├── custom-assertions/ # 端到端测试自定义断言
│  │  ├── runner.js      # 运行测试的脚本
│  │  └── nightwatch.conf.js # 运行测试的配置文件
├── .babelrc          # babel 配置文件
├── .editorconfig        # 编辑配置文件
├── .gitignore         # 用来过滤一些版本控制的文件,比如node_modules文件夹 
├── index.html         # index.html 入口模板文件
└── package.json        # 项目文件,记载着一些命令和依赖还有简要的项目描述信息 
└── README.md          #介绍自己这个项目的,可参照github上star多的项目。
build/

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS事件Event元素(兼容IE,Firefox,Chorme)
Nov 01 Javascript
window.requestAnimationFrame是什么意思,怎么用
Jan 13 Javascript
JavaScript程序开发之JS代码放置的位置
Jan 15 Javascript
Bootstrap框架的学习教程详解(二)
Oct 18 Javascript
Javascript将字符串日期格式化为yyyy-mm-dd的方法
Oct 27 Javascript
解决拦截器对ajax请求的拦截实例详解
Dec 21 Javascript
JavaScript中数组Array.sort()排序方法详解
Mar 01 Javascript
JS ES6多行字符串与连接字符串的表示方法
Apr 26 Javascript
Angular4 中内置指令的基本用法
Jul 31 Javascript
微信小程序自定义键盘 内部虚拟支付
Dec 20 Javascript
微信小程序实现的动态设置导航栏标题功能示例
Jan 31 Javascript
Node.js path模块,获取文件后缀名操作
Nov 07 Javascript
JavaScript实现一个带AI的井字棋游戏源码
May 21 #Javascript
Vue中父子组件通讯之todolist组件功能开发
May 21 #Javascript
Vue+Jwt+SpringBoot+Ldap完成登录认证的示例代码
May 21 #Javascript
纯JS实现可用于页码更换的飞页特效示例
May 21 #Javascript
JS实现的文件拖拽上传功能示例
May 21 #Javascript
以v-model与promise两种方式实现vue弹窗组件
May 21 #Javascript
Vue二次封装axios为插件使用详解
May 21 #Javascript
You might like
PHP SPL使用方法和他的威力
2013/11/12 PHP
PHP的password_hash()使用实例
2014/03/17 PHP
PHP curl模拟登录带验证码的网站
2015/11/30 PHP
phpinfo的知识点总结
2019/10/10 PHP
JS+XML 省份和城市之间的联动实现代码
2009/10/14 Javascript
JavaScript的null和undefined区别示例介绍
2014/09/15 Javascript
浅析javascript函数表达式
2016/02/10 Javascript
jquery html动态添加的元素绑定事件详解
2016/05/24 Javascript
JS实现的幻灯片切换显示效果
2016/09/07 Javascript
bootstrap-datetimepicker实现只显示到日期的方法
2016/11/25 Javascript
详解Javascript中DOM的范围
2017/02/13 Javascript
BootStrap表单验证 FormValidation 调整反馈图标位置的实例代码
2017/05/17 Javascript
关于js中的鼠标事件总结
2017/07/11 Javascript
Node.js+jade抓取博客所有文章生成静态html文件的实例
2017/09/19 Javascript
JavaScript实现打印星型金字塔功能实例分析
2017/09/27 Javascript
webpack优化的深入理解
2018/12/10 Javascript
mpvue小程序循环动画开启暂停的实现方法
2019/05/15 Javascript
微信小程序wxml列表渲染原理解析
2019/11/27 Javascript
JS实现图片切换特效
2019/12/23 Javascript
[03:07]DOTA2英雄基础教程 冰霜诅咒极寒幽魂
2013/12/06 DOTA
通过Pandas读取大文件的实例
2018/06/07 Python
python 返回列表中某个值的索引方法
2018/11/07 Python
python 实现语音聊天机器人的示例代码
2018/12/02 Python
解决pycharm的Python console不能调试当前程序的问题
2019/01/20 Python
Python实现京东秒杀功能代码
2019/05/16 Python
新手学习Python2和Python3中print不同的用法
2020/06/09 Python
Python接口自动化系列之unittest结合ddt的使用教程详解
2021/02/23 Python
英国打印机墨水和碳粉商店:Printerinks
2017/06/30 全球购物
全球最大的户外用品零售商之一:The House
2018/06/12 全球购物
《盲人摸象》教学反思
2014/02/16 职场文书
给学校的建议书
2014/03/12 职场文书
圣贤教育改变命运观后感
2015/06/16 职场文书
排球赛新闻稿
2015/07/17 职场文书
2015年大学组织委员个人工作总结
2015/10/23 职场文书
Opencv中cv2.floodFill算法的使用
2021/06/18 Python
javascript进阶篇深拷贝实现的四种方式
2022/07/07 Javascript