vue教程
vue官网
我们可以在 Vue.js 的官网上直接下载 vue.min.js 并用
methods 用于定义的函数,可以通过 return 来返回函数值。
{{ }} 用于输出对象属性和函数返回值。
当一个 Vue 实例被创建时,它向 Vue 的响应式系统中加入了其 data 对象中能找到的所有的属性。当这些属性的值发生改变时,html 视图将也会产生相应的变化。
除了数据属性,Vue 实例还提供了一些有用的实例属性与方法。它们都有前缀 $,以便与用户定义的属性区分开来
======插值=======
数据绑定最常见的形式就是使用 {{...}}(双大括号)的文本插值
使用 v-html 指令用于输出 html 代码:
======属性=========
HTML 属性中的值应使用 v-bind 指令。
Vue.js 都提供了完全的 JavaScript 表达式支持。
========指令============
指令是带有 v- 前缀的特殊属性。
指令用于在表达式的值改变时,将某些行为应用到 DOM 上
v-if 指令将根据表达式 seen 的值(true 或 false )来决定是否插入 p 元素。
可以用 v-else 指令给 v-if 添加一个 "else" 块:
v-else-if 在 2.1.0 新增,顾名思义,用作 v-if 的 else-if 块。可以链式的多次使用
也可以使用 v-show 指令来根据条件展示元素:
Sorry
v-bind 指令被用来响应地更新 HTML 属性
class 与 style 是 HTML 元素的属性,用于设置元素的样式,我们可以用 v-bind 来设置样式属性。
Vue.js v-bind 在处理 class 和 style 时, 专门增强了它。表达式的结果类型除了字符串之外,还可以是对象或数组
可以为 v-bind:class 设置一个对象,从而动态的切换 class:
也可以在对象中传入更多属性用来动态切换多个 class 。
v-bind:class="{ active: isActive, 'text-danger': hasError }">也可以直接绑定数据里的一个对象:
也可以在这里绑定返回对象的计算属性
可以把一个数组传给 v-bind:class
还可以使用三元表达式来切换列表中的 class :
可以在 v-bind:style 直接设置样式:
也可以直接绑定到一个样式对象
v-bind:style 可以使用数组将多个样式对象应用到一个元素上:
v-bind 缩写
v-on 指令,它用于监听 DOM 事件
v-on 缩写
v-model 指令来实现双向数据绑定:v-model 指令用来在 input、select、textarea、checkbox、radio 等表单控件元素上创建双向数据绑定,根据表单上的值,自动更新绑定的元素的值。
ue.js 允许你自定义过滤器,被用作一些常见的文本格式化
{{ message | capitalize }}
过滤器函数接受表达式的值作为第一个参数。
循环使用 v-for 指令。
v-for 指令需要以 site in sites 形式的特殊语法, sites 是源数据数组并且 site 是数组元素迭代的别名。
v-for 可以绑定数据到数组来渲染一个列表
v-for 可以通过一个对象的属性来迭代数据:
- {{ site.name }}
你也可以提供第二个的参数为键名:
- {{ key }} : {{ value }}
第三个参数为索引:
- {{ index }}. {{ key }} : {{ value }}
v-for 迭代整数
- {{ n }}
计算属性关键词: computed。
计算属性在处理一些复杂逻辑时是很有用的
我们可以使用 methods 来替代 computed,效果上两个都是一样的,但是 computed 是基于它的依赖缓存,只有相关依赖发生改变时才会重新取值。而使用 methods ,在重新渲染的时候,函数总会重新调用执行。
原始字符串: {{ message }}
计算后反转字符串: {{ reversedMessage }}
Vue.js 监听属性 watch,我们可以通过 watch 来响应数据的变化
米 :
组件(Component)是 Vue.js 最强大的功能之一。
组件可以扩展 HTML 元素,封装可重用的代码。
组件系统让我们可以用独立可复用的小组件来构建大型应用,几乎任意类型的应用的界面都可以抽象为一个组件树:
注册一个全局组件语法格式如下:
Vue.component(tagName, options)
tagName 为组件名,options 为配置选项。注册后,我们可以使用以下方式来调用组件:
全局组件
局部组件
Prop
prop 是子组件用来接受父组件传递过来的数据的一个自定义属性。
父组件的数据需要通过 props 把数据传给子组件,子组件需要显式地用 props 选项声明 "prop":
动态 Prop
类似于用 v-bind 绑定 HTML 特性到一个表达式,也可以用 v-bind 动态绑定 props 的值到父组件的数据中。每当父组件的数据变化时,该变化也会传导给子组件: