vue-cli “从入门到放弃”
主要作用:目录结构、本地调试、代码部署、热加载、单元测试
在如今前端技术飞速发展的时代,angular.js、vue.js 和 react.js 作为前端框架已经呈现出了三国鼎立的局面。作为国人若你不知道 vue,小生表示可以理解,如果作为中国的前端猿不知道 vue,小生表示很遗憾。而 vue-cli 作为官方推荐的快速构建 vue 项目的脚手架,你应该学会使用,本文将介绍如何使用 vue-cli。
在使用vue-cli前,希望你具备以下条件:
扎实的 JavaScript / HTML / CSS 基本功
通读官方教程 (guide) 的基础篇
这里我就不再赘述什么是 Vue.js 了,请需要了解的同学前往:
查看相关资源信息。
安装
检查是否安装 node.js, 如果没有请根据您的系统安装
node -v
v8.00全局安装 vue-cli
npm install -g vue-clivue-cli 的命令行
命令: init 从模板中创建项目
list 列出所有的官方模板
build 构建项目
help [cmd] 展示[cmd]命令的帮助信息使用vue list 查看所有模板
可用的官方模板: ★ browserify - 功能齐全的 Browserify + vueify 配置, 具备 hot-reload, linting & unit testing。
★ browserify-simple - 简单的 Browserify + vueify 配置,便于快速构建。
★ pwa - 基于 webpack 的 PWA 模板。
★ simple - 基于单html文件的最简单的vue配置模板。
★ webpack - 功能齐全的 Webpack + vue-loader 配置 hot reload, linting, testing & css extraction。
★ webpack-simple - 简单的 Webpack + vue-loader 配置,便于快速构建。使用vue init创建基于webpack模板的项目(目前使用最多)
vue init webpack <项目名> * Project name (demo) 项目名称,不能大写和中文,直接回车,使用默认名称
* Project description (A Vue.js project) 项目描述,也可直接点击回车,使用默认值
* Author 项目作者,使用默认名字
* Install vue-router? (Y/n) 是否安装vue-router,这是官方的路由,大多数情况下都使用
* Use ESLint to lint your code? (Y/n) 是否使用ESLint管理代码,ESLint是个代码风格管理工具,是用来统一代码风格的,并不会影响整体的运行,这也是为了团队开发,一般项目中都会使用
* Pick an ESLint preset 选择一个ESLint预设, 编写vue项目时的代码风格, 选择默认Standard即可
* Setup unit tests with Karma + Mocha? (Y/n) 是否安装单元测试,选择安装
* Setup e2e tests with Nightwatch? (Y/n) 是否安装e2e测试 ,选择安装
项目结构
cd 到 demo 目录下,发现如下的项目结构
文件说明
-- build 目录放的是构建脚本(包括构建时要用到的webpack 配置)
-- config 配置脚本(vue项目启动时需要的配置,开发模式和生产模式)
-- node_modules 通过npm install 安装的项目依赖包
-- src 项目源码目录
-- assets 项目模块资源文件包括:图片,css(会被webpack处理)
-- components 项目相关的vue组件,便于重用
-- router 项目的路由定义
App.vue 页面入口文件
main.js 项目的入口文件,挂在vue实例,加载路由,中间件等公共组件
-- static 页面需要引入的外部的纯静态资源(会直接拷贝到dist/static/里面)
-- test 项目测试
-- e2e 模拟用户行为的测试
-- unit 单元测试
.babelrc ES6语法编译配置,把我们ES2105的代码通过它编译成ES5的
.editorconfig 编辑器配置,定义代码格式
.eslintignore 忽略语法检查的目录文件配置
.eslintrc.js eslint的配置文件
.gitignore 配置Git仓库的忽略项
.postcssrc.js postcss的配置
index.html 项目入口模板文件
package.json 项目基本信息,运行脚本和相关依赖
README.md 项目介绍及开发指南
项目构建
首先安装依赖
npm install开发模式
npm run dev
服务开启成功后,浏览器打开:http://localhost:8080(默认服务启动的是8080端口,如果你想另起端口,可以修改 config/index.js 文件的 port)
生产环境
首先需要打包 npm run build ,打包完成后会在项目下生成 dist 文件夹,我们只需要将此文件夹部署到web服务器上即可。
小结
如果您坚持到了这一步,恭喜您,您至少没有放弃。整个项目虽然很简单地一气呵成了,但是其中涉及到的技术点还有待我们去探索,革命尚未成功,同志仍需努力。
vue-cli “从入门到放弃”的更多相关文章
- 学习 Vue ,从入门到放弃
最近项目刚完成,手上工作稍微轻松些,准备储备下技术,为未来挑战做好准备. 之前项目用的较多的是angulajs,不过版本较老,还停留在1.5x系,虽然结合了webpack,es2015等前沿技术,但理 ...
- Vue的从入门到放弃
此贴仅记录vue学习路程中遇见的大大小小,形形色色的问题 1. vue自动打开浏览器配置: 当使用vue 脚手架搭建项目后启动npm run dev,会出现 但是不会自动打开浏览器的,这时候去con ...
- 《vue.js2.0从入门到放弃》学习之路
原文地址: Vue.js2.0从入门到放弃---入门实例(一):http://blog.csdn.net/u013182762/article/details/53021374 Vue.js2.0从入 ...
- 一天带你入门到放弃vue.js(三)
自定义指令 在上面学习了自定义组件接下来看一下自定义指令 自己新建的标签赋予特殊功能的是组件,而指定是在标签上使用类似于属性,以v-name开头,v-on,v-if...是系统指令! v-是表示这是v ...
- 一天带你入门到放弃vue.js(二)
接下来我们继续学习一天带你入门到放弃系列vue.js(二),如有问题请留言讨论! v-if index.html <div id="app"> <p v-if=& ...
- 一天带你入门到放弃vue.js(一)
写在前面的话! 每个新的框架入手都会进行一些列的扯犊子!这里不多说那么多!简简单单说一下vue吧! Vue.js是目前三大框架(angular,vue,react)之一,是渐进式js框架,据说是摒弃了 ...
- webpack 配置 Vue 多页应用 —— 从入门到放弃
webpack 配置 Vue 多页应用 -- 从入门到放弃 一直以来,前端享有无需配置,一个浏览器足矣的优势,直到一大堆构建工具的出现,其中 webpack 就是其中最复杂的一个,因此出现了一个新兴职 ...
- VUE从入门到放弃(项目全流程)————VUE
VUE从入门到放弃(第一天)--整体流程 先想想一个项目,vue项目是从什么到什么,然后再什么的?那是什么呢? 搭建 ( vue-cli) 代码内容 运行 封装 成品 一.搭建(脚手架vue-cli) ...
- Vue.js的从入门到放弃进击录(二)
哇塞,昨晚更新的篇(一)这么多阅读量,看来入坑的人越来越多啦~熬了一个礼拜夜,今天终于生病惹~国庆要肥家咯·所以把篇(二)也更完.希望各位入坑的小伙伴能少跳几个坑呗.如果有什么不对的地方也欢迎讨论指正 ...
- [精品书单] C#/.NET 学习之路——从入门到放弃
C#/.NET 学习之路--从入门到放弃 此系列只包含 C#/CLR 学习,不包含应用框架(ASP.NET , WPF , WCF 等)及架构设计学习书籍和资料. C# 入门 <C# 本质论&g ...
随机推荐
- getRandomInt getRandomString
import java.util.concurrent.ThreadLocalRandom; private static final String AB = "ABCDEFGHIJKLMN ...
- kafka spark steam 写入elasticsearch的部分问题
应用版本 elasticsearch 5.5 spark 2.2.0 hadoop 2.7 依赖包版本 docker cp /Users/cclient/.ivy2/cache/org.elastic ...
- java实现银行管理系统
Bank类 package First; import java.util.TreeSet; //银行类public class Bank { private String Bankna ...
- Java 9 新特性 – 内部类的方块操作符
方块操作符 ( <> ) 在 Java 7 中就引入了,目的是为了使代码更可读. 但是呢,这个操作符一直不能在匿名内部类中使用 Java 9 修正了这个问题,就是可以在匿名内部类中使用方块 ...
- QT "debugger unknow type"问题解决办法
windows上使用qt编译有两种,一种是vs的编译器,一种是MinGW的. 这种问题主要是发生在选择了MSVC2013编译器的版本,这个版本的qt需要再装一个调试器,而MinGW不用. 解决办法:下 ...
- js - 常用的继承
零.序言 参考资料:JavaScript常用八种继承方案: 注:1.此篇笔记是站在上述资料的肩膀上的一篇小结: 2.阅读之前建议温习一下 js 中的 prototype 和 constructor:( ...
- win10安装mudbox失败,怎么强力卸载删除注册表并重新安装
一些搞设计的朋友在win10系统下安装mudbox失败或提示已安装,也有时候想重新安装mudbox的时候会出现本电脑windows系统已安装mudbox,你要是不留意直接安装mudbox,只会安装mu ...
- Mysql数据导出到excel-基于python
阅读本文大概需要 6分钟. 数据除了在测试平台显示,有时候也会习惯用excel以及邮件展示,那么我们可以在测试平台上加一个导出excel功能,方便操作,下面介绍主要代码以及逻辑. 使用操作数据库的py ...
- 多方论战!市场到底看重VR哪些特质
VR即Virtual Reality的缩写,中文译为"虚拟现实".近年来,VR的概念不断升温,三星.谷歌.微软.索尼.HTC等互联网巨头纷纷杀入VR市场,甚至催生出许多商业神话. ...
- 浅谈在ES5环境下实现const
最近看到一个面试题--用ES5实现const.作为JS初学者的笔者知道在ES6中有const命令,可以用来声明常量,一旦声明,常量的值就不可改变.例如: 1234567891011 const Pi ...