[TOC]
----
## 第一个Vue.js程序
### 安装
我们可以在 Vue.js 的[官网](http://cn.vuejs.org/)上直接下载 vue.min.js 并用 `<script>` 标签引入。Vue 会被注册为一个全局变量。
>[danger] 重要提示:在开发时请用开发版本,遇到常见错误它会给出友好的警告。
[下载Vue.js生产版本](https://vuejs.org/js/vue.min.js)
[下载Vue.js开发版本](https://vuejs.org/js/vue.js)
### 代码示例
~~~
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>it研习社-第一个Hello Vue程序</title>
</head>
<body>
<div id="app">
{{message}}
</div>
<script src="vue.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
var app=new Vue({
el:'#app',
data:{
message:'Hello Vue!'
}
});
</script>
</body>
</html>
~~~
>[success] 预览:https://ityanxi.github.io/Vue-tutorial/chapter01/01hellovue.html
页面输出:
![](https://box.kancloud.cn/45b3c46335c858e0b07fe342f0719ced_115x35.png)
### 第一个Hello Vue代码详解
>[info] 1.将vue.js文件引入到当前页面
~~~
<script src="vue.js" type="text/javascript" charset="utf-8"></script>
~~~
只要将vue.js文件引入页面,在当前环境就会多出一个全局变量:Vue
>[info] 2.通过全局构造函数:Vue ,实例化一个Vue应用程序接管的元素(包括所有的子元素)
~~~
<script type="text/javascript">
var app=new Vue({
el:'#app', //el:element 的简写 ,用来指定Vue应用程序接管的元素(包括所有的子元素)
data:{ //data:data就是Vue实例应用程序中的数据成员
message:'Hello Vue!'
}
});
</script>
~~~
>[info]3.代码执行流程解析
* 1.浏览器从上到下依次进行解析
浏览器对于id=app 的div 内部的 {{message}}不认识,直接作为普通文本渲染到网页上
* 2.浏览器继续往后解析执行
发现有一个js外链脚本,发起请求进行下载
当当前页面环境拿到js脚本之后,vue.js就会执行,执行结束,就向全局暴露出了一个对象:Vue
* 3.当解析执行到咱们自己的Script的时候,开始解析执行咱们自己的代码
- 3.1 创建Vue实例
通过 el 属性 指定 Vue程序 的接管范围
通过 data 向Vue 实例的应用程序中初始化了一个 message 成员
- 3.2 接下来
Vue 程序通过 el 属性指定id为 #app 的div
开始解析执行 Vue 能识别的语法
{{message}} 在Vue 中被称为双花括号插值表达式
在双括号插值表达式中可以使用 当前元素 所属Vue程序 接管范围的data中的数据
- 前端新手村
- 前言
- 第1章 遇见Vue.js
- 第一个Vue.js程序
- vue尝鲜
- 第2章 概念理解
- 渐进式框架
- 虚拟DOM
- MVVM模式
- MVX模式是什么
- 第3章 Vue基础概览
- 第4章 Vue内置指令详解
- vue-text
- vue-html
- v-show
- v-if
- v-else
- v-else-if
- v-for
- v-on
- v-bind
- v-model
- v-pre
- v-cloak
- v-once
- 第5章 基础demo小练习
- 图书管理系统
- 页面布局
- 列表渲染
- 功能实现
- 基于BootStrap+Vuejs实现用户信息表
- 功能描述
- 布局实现
- 星座判断
- 第6章 组件
- 什么是组件
- 使用组件
- Prop
- 自定义事件
- 使用Slot分发内容
- 动态组件
- 杂项
- 第7章-过渡
- 过渡效果
- 概述
- 单元素/组件的过渡
- 初始渲染的过渡
- 多个元素的过渡
- 多个组件的过渡
- 列表过渡
- 可复用的过渡
- 动态过渡
- 过渡状态
- 状态动画与watcher
- 动态状态转换
- 通过组件组织过渡
- Render函数
- 基础
- createElement参数
- 使用JavaScript代替模板功能
- JSX
- 函数化组件
- 模板编译
- 自定义指令
- 简介
- 钩子函数
- 钩子函数参数
- 函数简写
- 对象字面量
- Vuex状态管理
- Vuex是什么?
- Vuex的安装
- Vuex起步
- data的替代品-State和Getter
- 测试Getter
- Action-操作的执行者
- 测试Action
- 只用Mutation修改状态
- 测试Mutations
- Vuex的基本结构
- 子状态和模块
- 用服务分离外部操作
- Vue-router
- Vue-router是什么
- Vue-router安装
- 基本用法1
- 基本用法2
- Vue-cli
- Vue中的Node.js
- Vue中的npm、cnpm
- Vue中的webpack
- 安装
- 基本使用
- 模板
- 全局API
- Vue.extend
- Vue.nextTick
- Vue.set
- Vue.delete
- Vue.directive
- Vue.filter
- Vue.component
- Vue.use
- Vue.mixin
- Vue.compile
- 附录
- 相关网站
- 尤雨溪
- 第10章 webpack
- webpack安装
- webpack基本使用
- webpack命令行
- webpack配置文件
- 单页面应用SPA
- 第1章 Vue.js简介
- 1.1 Vue.js简介
- 1.1.1 Vue.js是什么
- 1.1.2 为什么要用Vue.js
- 1.1.3 Vue.js的发展历史
- 1.1.4 Vue.js与其他框架的区别
- 1.2 如何使用Vue.js
- 1.2.1 第一个Vue.js程序
- 1.2.2 Vue.js小尝鲜
- 1.3 概念详解
- 1.3.1 什么是渐进式框架
- 1.3.2 虚拟DOM是什么
- 1.3.3 如何理解MVVM
- 第2章 基础概览
- 2.1 Vue实例
- 2.1.1 构造器
- 2.1.2 属性与方法
- 2.1.3 实例生命周期
- 2.1.4 生命周期图示
- 2.2 模板语法
- 2.2.1 插值
- 2.2.2 指令
- 2.2.3 过滤器
- 2.2.4 缩写
- 第3章 Class与Style的绑定
- 第4章 模板渲染
- 第5章 事件详解
- 第6章 表单控件绑定
- 第7章 指令详解
- 7.1 内部指令
- 7.2 自定义指令
- 7.3 指令的高级选项
- 第8章 计算属性
- 第9章 过滤器
- 第10章 组件
- 10.1 什么是组件
- 10.2 注册组件
- 10.3 组件选项
- 10.4 组件间的通信
- 10.5 内容分发
- 10.6 动态组件