2.Vue基础(2018.01.10)

1.Vue简介:
Vue为复杂的单页面应用提供驱动,所有东西都是响应式的。所有的 Vue 组件都是 Vue 实例。 当一个 Vue 实例被创建时,它向 Vue  响应式系统 中加入了其  data  对象中能找到的所有的属性。当这些属性的值发生改变时,视图将会产生"响应",即更新为新的值。



2.模板语法:
数据绑定最常见的形式就是使用"Mustache"语法 (双大括号) 的文本插值,其 表现形式:{{ 语法 }}
1). 案例:
Message: {{ msg }}
Mustache 标签将会被替代为对应数据对象上  msg  属性的值。无论何时,绑定的数据对象上  msg  属性发生了改变,插值处的内容都会更新。
2). 通过使用 v-once 指令,也能执行一次性地插值,当数据改变时,插值处的内容不会更新。
 v-once>这个将不会改变: {{ msg }}
3).完整案例,后面案例形式跟此一样(在 Hello.vue 里面):
注:所有数据都写在data()里面。



3.VUE基本指令:
1). v-html:渲染文本
如果数据中包含HTML代码,而且你需要输出真正的HTML,则使用该标签。
 v-html="msg">
如果msg值为这是红色
结果:这是红色

2). v-text:渲染文本,等价于{{  msg  }}
如果数据中包含HTML代码,而且你需要输出原HTML代码,则使用该标签。
 v-text="msg">
如果msg值为这是红
结果:这是红色

3). v-bind:绑定元素的属性
如果需要将语法作用于HTML元素的属性上,则应该使用该标签。
 v-bind:id="dynamicId">
<a  v-bind:href="url">...a>
如果 dynamicId值 为product_id,url值为www.baidu.com
结果:
<a href="www.baidu.com">...a>

注:v-bind的简写形式为,如下:
 :id="dynamicId">
 :href="url"> ...

4). 使用 JavaScript 表达式
Vue.js 提供了完全的 JavaScript 表达式支持。
{{ number + 1 }}
{{ hello }}
{{ 1+1 }}
{{ "哈哈" }}
{{ 0<10 ? '对的' : '错的' }}
{{ ok ? 'YES' : 'NO' }}
{{ message.split('').reverse().join('') }}
 v-bind:id="'list-' + id">
注意:该语法只能存在单行语句,并且不能作用在HTML属性上,下面语句不会生效:
{{ var a = 1 }}
{{ if (ok) { return message } }}

5). 条件渲染:v-if 是一个指令,所以必须将它添加到一个元素上。
①.v-if:将根据表达式 seen 的值的真假来插入/移除 

 元素。

<p v-if="seen">现在你看到我了p>
②.v-else:v-else 元素必须紧跟在带 v-if 或者 v-else-if 元素的后面,否则它将不会被识别。
 
    
<h1 v-if="ok">Yesh1>
<h1 v-else>Noh1>
③.v-else-if:跟在 v-if 元素的后面。
<div v-if="type === 'A'">
A
div>

<div v-else-if="type === 'B'">
B
div>
<div v-else-if="type === 'C'">
C
div>
<div v-else>
Not A/B/C
div>
④.在