Vue.js模板方法

作者: 俞其荣 | 来源:发表于2017-12-21 21:19 被阅读130次

博文出处:Vue.js模板方法,欢迎大家关注我的博客,谢谢!

v-html

将 html 的代码输出

<div id="app">
    <div v-html="message"></div>
</div>
    
<script>
new Vue({
  el: '#app',
  data: {
    message: '<h1>Hello World</h1><img src="https://www.baidu.com/img/bd_logo1.png" />'
  }
})
</script>

v-bind

使用 v-bind 指令赋值给 HTML 属性

<div id="app">
    <img v-bind:src="imgurl" />
    <h1 v-bind:class="{'img_class': useClass}">Hello</h1>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    imgurl: 'https://www.baidu.com/img/bd_logo1.png',
    useClass: true
  }
})
</script>

<style>
.img_class {
  background: #444;
}
</style>

v-if

用于判断条件

<img id="app" src="https://www.baidu.com/img/bd_logo1.png" v-if="visible"/>

<script>
new Vue({
    el: '#app',
    data: {
        visible: true
    }
})
</script>

v-else-if/v-else

用于判断条件

<div id="app">
    <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>
</div>
    
<script>
new Vue({
  el: '#app',
  type: 'C'
})
</script>

v-show

可以使用 v-show 指令来根据条件展示元素,

用法上和 v-if 差不多,但是 v-if 是动态的向 DOM 树内添加或者删除 DOM 元素。 而 v-show 是通过设置 DOM 元素的 display 样式属性控制显隐。

关于 v-show 和 v-if 的区别,详见 v-if 和 v-show的区别

<div id="app">
    <h1 v-show="ok">Hello!</h1>
</div>
    
<script>
new Vue({
  el: '#app',
  data: {
    ok: true
  }
})
</script>

v-model

v-model 指令来实现双向数据绑定。

<div id="app">
    <p>{{ message }}</p>
    <input v-model="message">
</div>
    
<script>
new Vue({
  el: '#app',
  data: {
    message: 'Hello World'
  }
})
</script>

v-on

使用 v-on 监听事件

<div id="app">
    <button v-on:click="onclick">{{message}}</button>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    message: 'Click Me'
  },
  methods: {
    onclick: function(){
        alert("Hello")
    }
  }
})
</script>

v-for

循环遍历

<div id="app">
  <ol>
    <li v-for="site in sites">
      {{ site.name }}
    </li>
  </ol>
</div>
 
<script>
new Vue({
  el: '#app',
  data: {
    sites: [
      { name: 'Apple' },
      { name: 'Google' },
      { name: 'Taobao' }
    ]
  }
})
</script>

或者

<div id="app">
  <ul>
    <li v-for="(key,value, index) in object">
     {{ index }}. {{ key }} : {{ value }}
    </li>
  </ul>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    object: {
      name: 'Hello',
      url: 'World',
      slogan: 'Vue.js'
    }
  }
})
</script>

缩写

  • v-bind 缩写

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

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

相关文章

  • vue.js总结

    django模板语言与vue.js冲突问题 方法1: 修改vue.js绑定符`Vue.config.delimit...

  • Vue.js模板方法

    博文出处:Vue.js模板方法,欢迎大家关注我的博客,谢谢! v-html 将 html 的代码输出 v-bind...

  • Vue 入门2 基础篇

    [TOC] Vue.js 基础部分包括 Vue.js的组成 (template, script,style) 模板...

  • 用 Vue.js 做代办事宜列表

    前提条件 Vue.js 介绍 Vue.js 模板语法 Vue.js 组件 概要 类型:实践难度:中等 任务描述 做...

  • Vue.js模板语法

    Vue.js模板语法 Vue.js使用了基于HTML的模板语法,允许开发者声明式地将DOM绑定至底层Vue实例的教...

  • 学习笔记(十七)Vue.js源码剖析 - 模板编译和组件化

    Vue.js 源码剖析 - 模板编译和组件化 模板编译简介 模板编译主要目的是将模板(template)转换为渲染...

  • Vue基础(二)--模板和过滤器

    模板 1.简介 Vue.js使用基于HTML的模板语法,可以将DOM绑定到Vue实例中的数据模板就是{{}},用来...

  • Vue - 模板语法

    在vue中模板是什么? 这个就是模板: Vue.js 使用了基于HTML的模板语法,允许开发者声明式地将DOM绑定...

  • Vue.js:使用vue-cli快速构建项目

    vue-cli 是vue.js的脚手架,用于自动生成vue.js模板工程的。 1、npm install -g v...

  • 模板语法

    Vue.js 模板语法 Vue.js 使用了基于 HTML 的模版语法,允许开发者声明式地将 DOM 绑定至底层 ...

网友评论

    本文标题:Vue.js模板方法

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