使用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 相关文章推荐
JavaScript初学者建议:不要去管浏览器兼容
Feb 04 Javascript
Node.js中的模块机制学习笔记
Nov 04 Javascript
jQuery实现动画效果circle实例
Aug 06 Javascript
Jquery UI实现一次拖拽多个选中的元素操作
Dec 01 Javascript
基于JavaScript实现右键菜单和拖拽功能
Nov 28 Javascript
select下拉框插件jquery.editable-select详解
Jan 22 Javascript
详解微信小程序 template添加绑定事件
Jun 23 Javascript
在Vue-cli里应用Vuex的state和mutations方法
Sep 16 Javascript
Object.keys() 和 Object.getOwnPropertyNames() 的区别详解
May 21 Javascript
vue使用screenfull插件实现全屏功能
Sep 17 Javascript
vue element ui validate 主动触发错误提示操作
Sep 21 Javascript
微信小程序绘制半圆(弧形)进度条
Nov 18 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类的注册与自动加载
2013/07/05 PHP
PHP设计模式之观察者模式实例
2016/02/22 PHP
PHP+MYSQL实现读写分离简单实战
2017/03/13 PHP
PHP封装的简单连接MongoDB类示例
2019/02/13 PHP
php判断目录存在的简单方法
2019/09/26 PHP
JavaScript 验证浏览器是否支持javascript的方法小结
2009/05/17 Javascript
jquery $.ajax()取xml数据的小问题解决方法
2010/11/20 Javascript
javascript预览上传图片发现的问题的解决方法
2010/11/25 Javascript
javascript当中的代码嗅探扩展原生对象和原型(prototype)
2013/01/11 Javascript
JS扩展方法实例分析
2015/04/15 Javascript
javascript中undefined与null的区别
2015/08/16 Javascript
基于jquery实现动态竖向柱状条特效
2016/02/12 Javascript
JS把内容动态插入到DIV的实现方法
2016/07/19 Javascript
浅谈JS继承_借用构造函数 & 组合式继承
2016/08/16 Javascript
js中class的点击事件没有效果的解决方法
2016/10/13 Javascript
jQuery根据ID、CLASS、等获取对象的实例
2016/12/04 Javascript
JavaScript实现的仿新浪微博原生态输入字数即时检查功能【兼容IE6】
2017/09/26 Javascript
vuex实现登录状态的存储,未登录状态不允许浏览的方法
2018/03/09 Javascript
微信小程序实现人脸检测功能
2018/05/25 Javascript
Vue中div contenteditable 的光标定位方法
2018/08/25 Javascript
微信小程序实现提交input信息到后台的方法示例
2019/01/19 Javascript
详解Element-UI中上传的文件前端处理
2019/08/07 Javascript
解决VUE项目localhost端口服务器拒绝连接,只能用127.0.0.1的问题
2020/08/14 Javascript
Python编程pygame模块实现移动的小车示例代码
2018/01/03 Python
python判断设备是否联网的方法
2018/06/29 Python
python库skimage给灰度图像染色的方法示例
2020/04/27 Python
python 怎样进行内存管理
2020/11/10 Python
丝芙兰美国官网:SEPHORA美国
2016/08/03 全球购物
HQhair美国/加拿大:英国化妆品、美容及美发产品商城
2019/04/15 全球购物
高中毕业自我鉴定
2013/12/19 职场文书
青年创业培训欢迎词
2014/01/08 职场文书
计划生育证明书写要求
2014/09/17 职场文书
培训感想范文
2015/08/07 职场文书
检讨书怎么写?
2019/06/21 职场文书
浅谈自定义校验注解ConstraintValidator
2021/06/30 Java/Android
MySQL 原理与优化之Limit 查询优化
2022/08/14 MySQL