美文网首页
Vue入门指南(2)

Vue入门指南(2)

作者: 我向你奔 | 来源:发表于2018-01-24 19:43 被阅读17次

数据绑定

1.插入值

文本
数据绑定最基础的形式是文本插值,使用 “Mustache” 语法(双花括号):

<span>Message : {{ msg }}</span>

<script src="vue.js"></script>
<script>
  new Vue({
    el: "div",
    data: {
      msg: "大家好,我是奔哥!"
    }
  })
</script>
TIM图片20180124154637.png

Mustache 标签会被相应数据对象的 msg属性的值替换。每当这个属性变化时它也会更新。
当然,我们也可以只处理单次插值,今后的数据变化就不会再引起插值更新了:

<span>This will never change: {{* msg }}</span>

原始的HTML
双 Mustache 标签将数据解析为纯文本而不是 HTML。为了输出真的 HTML 字符串,需要用三 Mustache 标签:

<span>This is raw HTML : {{{ raw_html }}}</span>

<script src="vue.js"></script>
<script>
new Vue({
  el: "span",
  data: {
    raw_html: "alert(123)"
  }
})
</script>
TIM图片20180124155251.png
内容以 HTML 字符串插入——数据绑定将被忽略。如果需要复用模板片断,应当使用 partials。
HTML特性
Mustache 标签也可以用在 HTML 特性 (Attributes) 内:
<div id="item-{{ id }}">我的id是:item-{{ id }}</div>

<script src="vue.js"></script>
<script>
  new Vue({
    el: "div",
    data: {
      id: 1
    }
  })
</script>
TIM图片20180124155613.png

在 Vue.js 指令和特殊特性内不能用插值。不必担心,如果 Mustache 标签用错了地方 Vue.js 会给出警告。

2. 绑定表达式

JS表达式
Vue.js 在数据绑定内支持全功能的 JavaScript 表达式:

<div id="example1">{{ 5 + 5 }}</div>
<div id="example2">{{ number + 1 }}</div>
<div id="example3">{{ ok ? "Yes" : "No" }}</div>
<div id="example4">{{ str.split("").reverse().join("") }}</div>

<script src="vue.js"></script>
<script>
new Vue ({ 
  el: "#example1" 
})
new Vue ({
  el: "#example2",
  data: {
    number: 3
  }
})
new Vue ({
  el: "#example3",
  data: {
    ok: true
  }
})
new Vue ({
  el: "#example4",
  data: {
    str: "abcde"
  }
})  
</script>
TIM图片20180124161227.png
过滤器
过滤器是一个通过输入数据,能够及时对数据进行处理并返回一个结果的简单函数。Vue.js 允许在表达式后添加可选的过滤器 (Filter) 。过滤器通常会使用管道标志 “ | ”,注意,管道语法不是 JavaScript 语法,因此不能在表达式内使用过滤器,只能添加到表达式的后面。
<div>{{ message | capitalize }}</div>

<script src="vue.js"></script>
<script>
  new Vue({
    el: "div",
      data: {
        message: "hello world!"
    }
  })
</script>
TIM图片20180124161635.png

在上述的例子中,我们在插值时用了Vue的capitalize过滤器,capitalize过滤器可以将输入的字符串首字母转换成大写字母。
过滤器还可以串联:

<div>{{ message | filterA | filterB }}</div>

过滤器也可以接受参数:

<div>{{ message | filterA 'arg1' arg2 }}</div>

3. 指令

指令 (Directives) 是特殊的带有前缀 v- 的特性

<style>
.style {
  color: red;
  font-size: 50px;
}
</style>

<div>
  <div class="style" v-if="display">Hello!我是惠皎</div>
</div>

<script src="vue.js"></script>
<script>
  new Vue ({
    el: "div",
    data: {
        display: true
    }
  })
</script>
TIM图片20180124175448.png

当然,如果我们把display的值改为false,那浏览器就什么都没有。
有些指令可以在其名称后面带一个“参数”,中间放一个冒号隔开。

<style>
  .style{
      color: red;
      font-size:50px;
   }
</style>

<div>
  <div id="demo" v-bind:class="{'style' : bol}">{{ innerText }}</div>
</div>

<script src="vue.js"></script>
<script>
  new Vue ({
    el: "#demo",
    data: {
      innerText: "我最酷你服不服!",
      bol: true
    }
  })
</script>
TIM图片20180124184103.png

4. 缩写

<!-- 完整语法 -->
<a v-bind:href="url"></a>
<!-- 缩写 -->
<a :href="url"></a>

<!-- 完整语法 -->
<a v-on:click="doSomething"></a>
<!-- 缩写 -->
<a @click="doSomething"></a>

相关文章

  • Vue入门指南(2)

    数据绑定 1.插入值 文本数据绑定最基础的形式是文本插值,使用 “Mustache” 语法(双花括号): Must...

  • Vue 入门指南

    Vue 入门指南 章节导航 英文:http://vuejs.org/guide/index.html 介绍 vue...

  • 2018计划读书列表

    公司藏书: 1、micro:bit 入门指南 2、MicroPython入门指南 3、创客空间搭建指南-工具.设备...

  • VUE系列教程目录

    VUE系列教程目录 vue入门之路篇系列教程: vue最简单的入门教程+实战+Vue2+VueRouter2+we...

  • VUE系列教程目录

    VUE系列教程目录 vue入门之路篇系列教程:vue最简单的入门教程+实战+Vue2+VueRouter2+web...

  • Vue学习 Vue SSR + Vuex

    github 项目地址 预览 说明 vue学习整理 未严格按照Vue风格指南 旨在学习与交流vue语法以及基本入门...

  • 2018-09-11 Vue day01

    1、Git2、Vue入门学习(练习)注:先引入vue.js(1)入门练习 (2)练习2 (3)练习3

  • Vue 网络请求框架 axios 使用教程

    前期回顾 1. Vue 学习入门指南[https://www.jianshu.com/p/afacfe9485fa...

  • 01vue-安装vue

    资源 1.Vue.js2.0从入门到放弃---入门实例(一)2.Vue.js入门学习(一)3.Vue官方中文Api...

  • Vue入门指南

    Vue.js新手入门指南 最近在逛各大网站,论坛,以及像SegmentFault等编程问答社区,发现Vue.js异...

网友评论

      本文标题:Vue入门指南(2)

      本文链接:https://www.haomeiwen.com/subject/yffuaxtx.html