使用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 相关文章推荐
jquery和javascript的区别(常用方法比较)
Jul 04 Javascript
jquery 利用show和hidden实现级联菜单示例代码
Aug 09 Javascript
JS弹出层的显示与隐藏示例代码
Dec 27 Javascript
js验证上传图片的方法
May 12 Javascript
js+canvas简单绘制圆圈的方法
Jan 28 Javascript
Boostrap入门准备之border box
May 09 Javascript
jQuery实现的网格线绘制方法
Jun 20 Javascript
Angular的事件和表单详解
Dec 26 Javascript
使用jQuery.Pin垂直滚动时固定导航
May 24 jQuery
JS实现判断图片是否加载完成的方法分析
Jul 31 Javascript
js实现导航跟随效果
Nov 17 Javascript
JS/jQuery实现获取时间的方法及常用类完整示例
Mar 07 jQuery
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实现读取超大文件的方法
2014/07/28 PHP
php实现文本数据导入SQL SERVER
2015/05/17 PHP
CodeIgniter自定义控制器MY_Controller用法分析
2016/01/20 PHP
php中10个不同等级压缩优化图片操作示例
2016/11/14 PHP
php项目中类的自动加载实例讲解
2019/09/12 PHP
如何实现动态删除javascript函数
2007/05/27 Javascript
javascript 跳转代码集合
2009/12/03 Javascript
Javascript下IE与Firefox下的差异兼容写法总结
2010/06/18 Javascript
JS实现的生成随机数的4个函数分享
2015/02/11 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
2015/03/26 Javascript
Jquery全屏相册插件zoomvisualizer具有调节放大与缩小功能
2015/11/02 Javascript
JavaScript面试开发常用的知识点总结
2016/08/08 Javascript
浅谈jQuery中事情的动态绑定
2017/02/12 Javascript
vue2.0 中#$emit,$on的使用详解
2017/06/07 Javascript
React教程之封装一个Portal可复用组件的方法
2018/01/02 Javascript
Vue实现移动端页面切换效果【推荐】
2018/11/13 Javascript
vue+elementui 对话框取消 表单验证重置示例
2019/10/29 Javascript
js实现蒙版效果
2020/01/11 Javascript
Python的Flask框架中集成CKeditor富文本编辑器的教程
2016/06/13 Python
Python学习教程之常用的内置函数大全
2017/07/14 Python
python中利用队列asyncio.Queue进行通讯详解
2017/09/10 Python
Python批量更改文件名的实现方法
2017/10/29 Python
Python实现的爬取网易动态评论操作示例
2018/06/06 Python
python保存二维数组到txt文件中的方法
2018/11/15 Python
Django实现单用户登录的方法示例
2019/03/28 Python
PyQt5基本控件使用详解:单选按钮、复选框、下拉框
2019/08/05 Python
基于python实现检索标记敏感词并输出
2020/05/07 Python
Python读写锁实现实现代码解析
2020/11/28 Python
HTML5之HTML元素扩展(下)—增强的Form表单元素值得关注
2013/01/31 HTML / CSS
英国排名第一的在线宠物用品商店:Monster Pet Supplies
2018/05/20 全球购物
如何在存储过程中使用Loop
2016/01/05 面试题
文明学生标兵事迹
2014/01/21 职场文书
暂住证证明
2015/06/19 职场文书
圣诞晚会主持词
2015/07/01 职场文书
股权投资协议书
2016/03/23 职场文书
如何使用pdb进行Python调试
2021/06/30 Python