使用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报错 Object doesn't support this property or method的原因分析
Mar 31 Javascript
Jquery的hide及toggle方法让超链接慢慢消失
Sep 06 Javascript
JavaScript Array对象扩展indexOf()方法
May 09 Javascript
探讨js字符串数组拼接的性能问题
Oct 11 Javascript
javascript十六进制及二进制转化的方法
May 06 Javascript
浅析在javascript中创建对象的各种模式
May 06 Javascript
在html中引入外部js文件,并调用带参函数的方法
Oct 31 Javascript
jQuery实现标签页效果实战(4)
Feb 08 Javascript
webpack4简单入门实例
Sep 06 Javascript
Vue异步组件处理路由组件加载状态的解决方案
Sep 07 Javascript
taro开发微信小程序的实践
May 21 Javascript
Vue优化:常见会导致内存泄漏问题及优化详解
Aug 04 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
15个小时----从修改程序到自己些程序
2006/10/09 PHP
phpMyAdmin2.11.6安装配置方法
2008/08/24 PHP
php技巧小结【推荐】
2017/01/19 PHP
php根据地址获取百度地图经纬度的实例方法
2019/09/03 PHP
php连接mysql之mysql_connect()与mysqli_connect()的区别
2020/07/19 PHP
jQuery 表单验证扩展(四)
2010/10/20 Javascript
JQuery+DIV自定义滚动条样式的具体实现
2013/06/25 Javascript
javascript的alert box在java中如何显示多行
2014/05/18 Javascript
windows下安装nodejs及框架express
2015/08/07 NodeJs
JS清除文本框内容离开在恢复及鼠标离开文本框时触发js的方法
2016/01/12 Javascript
下雪了 javascript实现雪花飞舞
2020/08/02 Javascript
浅谈javascript控制HTML5的全屏操控,浏览器兼容的问题
2016/10/10 Javascript
Bootstrap源码解读标签、徽章、缩略图和警示框(8)
2016/12/26 Javascript
AngularJS ng-repeat指令及Ajax的应用实例分析
2017/07/06 Javascript
underscore之Chaining_动力节点Java学院整理
2017/07/10 Javascript
jQuery length 和 size()区别总结
2018/04/26 jQuery
Vue3.0 响应式系统源码逐行分析讲解
2019/10/14 Javascript
Vue实现开心消消乐游戏算法
2019/10/22 Javascript
python 实现插入排序算法
2012/06/05 Python
跟老齐学Python之编写类之二方法
2014/10/11 Python
pandas 取出表中一列数据所有的值并转换为array类型的方法
2018/04/11 Python
Python3.6使用tesseract-ocr的正确方法
2018/10/17 Python
浅谈python中真正关闭socket的方法
2018/12/18 Python
python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法
2020/02/27 Python
法国大使拉杆箱官网:DELSEY Paris
2018/03/20 全球购物
极度干燥澳大利亚官方网站:Superdry澳大利亚
2019/03/28 全球购物
软件测试工程师面试问题精选
2016/10/28 面试题
面试求职的个人自我评价
2013/11/16 职场文书
应付会计岗位职责
2013/12/12 职场文书
奥巴马演讲稿
2014/01/08 职场文书
20年同学聚会邀请函
2014/02/04 职场文书
大型营销活动计划书
2014/04/28 职场文书
运动会广播稿100字
2014/09/14 职场文书
小学师德师风整改措施
2014/10/27 职场文书
三严三实·严以修身心得体会
2016/01/15 职场文书
JS如何实现基于websocket的多端桥接平台
2021/05/14 Javascript