VUE之搭建脚手架
使用 Vue.js 开发大型应用时,我们需要考虑代码目录结构、项目构建和部署、热加载、代码单元测试等事情。如果每个项目都要手动完成这些工作,那无疑效率是低下的,所以通常我们会使用一些脚手架工具来帮助完成这些事情。在 Vue.js 生态中我们可以使用 vue-cli 脚手架工具来快速构建项目。
(1) 安装之前需要检查是否已经安装NodeJS的环境
可以使用node -v检查,且需要保证安装4.0版本以上的nodejs环境
执行命令node -v 安装的版本为 v6.9.4
如果没有安装则执行下面的步骤:node.js安装过程如下:
- 安装文件下载地址:https://nodejs.org/en/
- 下载得到压缩文件node-v6.9.4-c64.msi
- 双击进行安装
- 查看安装目录
- node.js就安装完成
(2)安装vue-cli
vue-cli 是用 node 编写的命令行工具,我们需要进行全局安装。打开命令行工具,输入指令:
$ npm install -g vue-cli
也可以安装一个npm的淘宝镜像,这样安装快一些
安装命令如下:
npm install -g cnpm --registry=https://registry.npm.taobao.org
安装完成以后,执行如下命令:
$ vue --version
得到安装的vue版本是2.8.1
(3)基本使用
生成项目模板的命令格式为
$ vue init <template-name> <project-name>
<template-name>:模板名,比如 webpack, simple, browserify
<project-name>: 本地文件夹名称
我们可以使用 vue-cli 来快速生成一个基于 Webpack 构建的项目。打开命令行工具,输入如下命令:
$ vue init webpack my-project
所有模板默认安装的是 Vue 2.x 版本,如果需要安装 1.x 版本,需要输入如下指令:$ vue init webpack#1.0 my-project
有一系列交互问题,同意按 y,不同意按 n。
初始化项目之后,查看项目目录如下:
安装命令行给出的提示,我们依次输入如下指令:
$ cd my-project
$ npm install
安装过程如下:
安装完毕以后会在对应的目录下生成如下文件,多了一个node-module文件,里面是依赖的node工具包:
下面对上图目录做一个简要的说明
现在启动项目,输入如下命令:
$ npm run dev
默认监听的是 8080 端口
甚至连 Apche服务器都不需要自己启动,在浏览器中输入 http://localhost:8080,生成的页面如下:
接下来我们打开 src/components/Hello.vue,把数据中的 msg 改成 “你好,世界!”
<script>
export default {
data () {
return {
// note: changing this line won‘t causes changes
// with hot-reload because the reloaded component
// preserves its current state and we are modifying
// its initial state.
msg: ‘你好,世界!‘
}
}
}
</script>
重新刷新页面:
(4)模板
这里对两个命令做进一步拓展介绍:
4-1、init
init 命令用来基于指定模板生成项目结构。前面提到过的,template-name 为模板名,project-name 为要生成的目录名
4-2、list
list 命令用于列出所有可用的模板,通过查询 https://api.github.com/users/vuejs-templates/repos 这个API 接口可以得到所有列表。
命令行输入指令:
$ vue list
前面提到,在执行 init 命令时可以指定模板的名字。在默认情况下,vue-cli 会根据所传入的模板名字去 github 中查找模板。
vue-cli 的模板分为 官方模板、自定义模板、本地模板
(1)、官方模板
上图中就提供了 5种 官方模板:
browserify -- 拥有高级功能的 Browserify + vueify 用于 正式开发
browserify-simple -- 拥有基础功能的 Browserify + vueify 用于 快速开发
simple -- 单个 HTML,用于开发最简单的 Vue.js 应用
webpack -- 拥有高级功能的 Webpack + vue-loader 用于正式开发
webpack-simple -- 拥有基础功能的 Webpack + vue-loader 用于快速开发
在这里特别提一下 webpack,前面在安装 webpack 模板时,有一个选择项,是否使用 ESLint 来规范你的代码
ESLint 对于平时不太注意代码缩进的朋友可能是一个噩耗,我们简单演示一下,打开 src 下的 App.vue,把代码稍作修改
<template>
<div id="app">
<h2>2017年来啦!</h2>
<strong>{{msg}}</strong>
</div>
</template>
<script>
export default {
data(){
return {
msg:‘好好学习 Vue.js!‘
}
}
}
</script>
刷新页面,提示了各种代码缩进、空格 之类的错误
(2)、自定义模板
当官方模板不能满足需求时,我们可以 fork 官方模板按照自己的需求修改后,通过 vue-cli 命令生成基于自己模板的项目结构:
$ vue init username/repo my-project
(3)、本地模板
除了从 github 下载模板外,我们还可以从本地加载模板:
$ vue init ~/fs/path/to-custom-template my-project
5、推荐的工具包
vue-cli 内部使用了很多第三方 npm 包来帮助自己实现一些基础功能,比如下面这些
5-1、commander
commander 是一个命令行接口的解决方案,它提供了一些接口方便我们对命令行的命令做解析。
仓库地址:https://github.com/tj/commander.js
5-2、download-git-repo
download-git-repo 用来将相应的 git 库(Github、GitLab、Bitbucket)下载到指定的本地文件夹。
仓库地址:https://github.com/flipxfx/download-git-repo
VUE之搭建脚手架的更多相关文章
- Vue:Vue2.0搭建脚手架
随着Vue.js越来越火爆,更多的项目都用到Vue进行开发,在实际的开发项目中如何搭建脚手架呢?今天就来跟大家分享一下如何使用vue-cli搭建脚手架. 一.安装node.js 1.进入官网https ...
- VUE框架学习——脚手架的搭建
#我的VUE框架学习 题记:初识VUE,觉得VUE十分的不错,故决定去深入的了解学习它,工欲善其事,必先利其器,下面是我搭建vue环境的过程! #一.项目搭建及初始化 1.安装:node.js:去官网 ...
- Vue搭建脚手架2
Vue2.0搭建Vue脚手架(vue-cli) 在网上找了很多的搭建脚手架教程,但都不求甚解.终于找到2个比较好的教程,读者可对比阅读1和2,在这里分享给大家,希望对初学者有所帮助.ps:高手请绕道. ...
- Vue搭建脚手架1
Vue2.0搭建Vue脚手架(vue-cli) 此文章参考了网上一些前人的技术分享,自己拿过来总结一下.此文章是基于webpack构建的vue项目,并实现简单的单页面应用.其中利用到的相关技术会简单加 ...
- Vue 搭建脚手架 && 脚手架的文件结构 && 关于不同版本的Vue
1 # 一.Vue 环境搭建 2 # 1.VsCode 编码插件:Vuter 3 # 2.Vue 脚手架安装 4 # 1).安装:npm install -g @vue/cli or yarn glo ...
- Vue项目搭建完整剖析全过程
Vue项目搭建完整剖析全过程 项目源码地址:https://github.com/ballyalex 有帮助的话就加个星星呗~! 项目技术栈:vue+webpack+bower+sass+axios ...
- vue环境搭建与创建第一个vuejs文件
我们在前端学习中,学会了HTML.CSS.JS之后一般会选择学习一些框架,比如Jquery.AngularJs等.这个系列的博文是针对于学习Vue.js的同学展开的. 1.如何简单地使用Vue.js ...
- ASP.NET Core 实战:使用 ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目
一.前言 这几年前端的发展速度就像坐上了火箭,各种的框架一个接一个的出现,需要学习的东西越来越多,分工也越来越细,作为一个 .NET Web 程序猿,多了解了解行业的发展,让自己扩展出新的技能树,对自 ...
- Vue项目搭建与部署
Vue项目搭建与部署 一,介绍与需求 1.1,介绍 Vue 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue两大核心思想:组件化和数据驱动.组 ...
随机推荐
- Beta版本讨论
目录 组员:胡绪佩 组员:何家伟 组员:黄鸿杰 组员: 翟丹丹 组员:周政演 组员:胡青元 组员:庄卉 组员:刘恺琳 组员:何宇恒 组员:刘一好 组员:葛家灿 组员:胡绪佩 总结 通过这次的Beta版 ...
- 关于Python matplotlib显示汉字乱码问题
我也是一个初学者,在今天编程时遇到的一个问题,我是基于Eclipse编写Python代码,在使用matplotlib进行数据可视化时,发现显示不了汉字并且出现乱码问题. (1)使用中文注释时报错: 解 ...
- PHP 验证IP的合法性
php验证IP的合法性! function get_ip(){ //判断服务器是否允许$_SERVER if(isset($_SERVER)){ if(isset($_SERVER[HTTP_X_FO ...
- [转帖]SQLSERVER 使用触发器实现 禁用sa用户 在非本机登录
原贴地址: https://blog.csdn.net/reblue520/article/details/51580102 具体的方法为: 创建一个触发器 CREATE TRIGGER forbid ...
- wordpress点击中文tag标签出现404解决方案
TypeCho转WordPress之后,发现点击中文tag出现404页面,也就是点击无效了.试了几种修改链接样式,都没效果.也尝试了各种网上找的3中方法: 第一种方法:打开 WP-include/cl ...
- 两种常用文件分享方式 - 网络硬盘快速分享, 点对点的文件共享 BitTorrent Sync
普通的用户经常通过电子邮件.QQ传递等方式进行文件的分享,但是由于不同的网络环境有的时候可能会有不同的限制,所以我们就需要寻找其他的方式来替代.今天就为大家推荐两个既常用又与众不同的分享方式. 中国论 ...
- kvm安装配置
操作系统版本:CentOS Linux release 7.5.1804 (Core) 内核版本:3.10.0-862.el7.x86_64 1.安装 安装以下软件.yum -y install qe ...
- BZOJ2299 HAOI2011向量(数论)
设最后的组成为x=x0a+x1b,y=y0a+y1b.那么容易发现x0和y0奇偶性相同.x1和y1奇偶性相同.于是考虑奇偶两种情况,问题就变为是否存在x和y使ax+by=c,那么其充要条件是gcd(a ...
- 【Revit API】脱离中心文件
话不多说,直接代码,整个过程不需要发起Transaction OpenOptions op = new OpenOptions(); op.Audit = true; //是否需要核查 op.Deta ...
- 将句子表示为向量(下):基于监督学习的句子表示学习(sentence embedding)
1. 引言 上一篇介绍了如何用无监督方法来训练sentence embedding,本文将介绍如何利用监督学习训练句子编码器从而获取sentence embedding,包括利用释义数据库PPDB.自 ...