Vue中Mustache插值语法与v-bind指令详解

 更新时间:2022年10月10日 11:14:24   作者:东非不开森  
在Vue中通过Mustache语法(双大括号)将data中的文本数据插入到HTML中,下面这篇文章主要给大家介绍了关于Vue中Mustache插值语法与v-bind指令的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

上期回顾:Vue简介、引入、命令式和声明式编程

一、Mustache插值语法

mustache 语法: 是"胡子"的意思, 据说是因为嵌入标记像胡子 {{}}(我觉得一点也不像哎O(∩_∩)O哈哈~)

把数据显示到模板(template)中,使用最多的语法是 “Mustache”语法 (双大括号) 的文本插值

  • data返回的对象是有添加到Vue的响应式系统中;
  • 当data中的数据发生改变时,对应的内容也会发生更新。
  • Mustache中不仅仅可以是data中的属性,也可以是一个JavaScript的表达式

我们可以写:

  • 表达式
  • 三元表达式
  • 调用methods中函数
 <div id="app">
      <h2>{{message}}</h2>
      <h2>当前计数:{{counter}}</h2>

      <!-- 2.表达式 -->
      <h2>计数双倍:{{counter*2}}</h2>
      <h2>展示的信息:{{info.split(" ")}}</h2>

      <!-- 3.三元表达式 -->
      <h2>{{age>=18?"成年人" : "未成年人"}}</h2>

      <!-- 4.调用methods中函数 -->
      <h2>{{formatDate(time)}}</h2>
</div>

 二、v-bind的绑定属性

2.1.v-bind绑定基本属性

单向绑定v-bind:数据只能从data流向页面

绑定属性我们可以使用v-bind,比如动态绑定a元素的href属性、img元素的src属性

v-bind用于

  • 绑定一个或多个属性值
  • 向另一个组件传递props值**(props:相当于一个组件的输入,后面会学习到的)

v-bind:href 可以写为 :href 这就是v-bind的语法糖

<div id="app">
      <!-- 1.绑定img的src属性 -->
      <button @click="switchImage">切换图片</button>
      <img v-bind:src="showImgUrl" alt="" />
      <!--语法糖 v-bind: = :  -->
      <!-- 2.绑定a的href属性 -->
      <a v-bind:href="href" rel="external nofollow" >百度一下</a>
    </div>

2.2.v-bind绑定class

基本绑定class

<h2 :class="classes">Hello World</h2>

动态class可以写对象语法

<button :class="isActive ? 'active':''" @click="btnClick">
我是按钮
</button>

对象语法的基本使用

<button :class="{active:isActive}" @click="btnclick">我是按钮</button>

对象语法的多个键值对,动态绑定的class是可以和普通的class同时的使用

  • 我们可以给v-bind:class一个对象,用以动态的切换class
  • 当然,v-bind:class也是可以与普通的class特性共存
<button class="abc cba" :class="getDynamicClasses" @click="btnClick">
我是按钮
</button>

 2.3.v-bind绑定style

普通的html写法

<h2 style="color: aqua; font-size: 30px">hhh</h2>

style中的某些值,来自data中

动态绑定style,在后面跟上对象类型

<h2 v-bind:style="{color:fontColor,fontSize:fontSize}">hhhh</h2>

动态的绑定属性,这个属性是一个对象

<h2 :style="objStyle">hhhhh</h2>

2.4.v-bind绑定属性名

绑定data中的属性名

在属性名不是固定的情况下使用:[属性名]=“值”

<div id="app">
      <h2 :[name]="aaaa">Hello World</h2>
    </div>
    <script src="../lib/vue.js"></script>
    <script>
      const app = Vue.createApp({
        data: function () {
          return {
            name: "class",
          };
        },
      });
      app.mount("#app");

2.5.v-bind直接绑定对象

传入一个对象,对象来自于data,一个对象的所有属性,绑定到元素上的所有属性

<div id="app">
      <h2 :name="name" :age="age" :height="height">Hello world</h2>
      <--直接绑定一个对象,一步到位-->
      <h2 v-bind="infos"></h2>
    </div>

    <script src="../lib/vue.js"></script>
    <script>
      const app = Vue.createApp({
        data: function () {
          return {
            infos: { name: "kk", age: 18, height: 1.7 },
            name: "kk",
            age: 18,
            height: 1.7,
          };
        },
      });
      app.mount("#app");

总结

到此这篇关于Vue中Mustache插值语法与v-bind指令的文章就介绍到这了,更多相关Vue Mustache插值与v-bind指令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Vue+scss白天和夜间模式切换功能的实现方法

    Vue+scss白天和夜间模式切换功能的实现方法

    这篇文章主要介绍了Vue+scss白天和夜间模式切换功能的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • vue @tap事件之$event用法介绍

    vue @tap事件之$event用法介绍

    这篇文章主要介绍了vue @tap事件之$event用法介绍,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • 浅谈vue中的data与_data的关系是什么

    浅谈vue中的data与_data的关系是什么

    在Vue实例中,data属性是用户定义的用于存储数据的对象,而_data是Vue内部用于存储数据的对象,本文主要介绍了浅谈vue中的data与_data的关系是什么,感兴趣的可以了解一下
    2023-12-12
  • Vue自定义v-has指令,做按钮权限判断的步骤

    Vue自定义v-has指令,做按钮权限判断的步骤

    这篇文章主要介绍了Vue自定义v-has指令,做按钮权限判断的步骤,帮助大家更好的理解和学习使用vue框架,感兴趣的朋友可以了解下
    2021-04-04
  • Vue实现自动检测以及版本的更新

    Vue实现自动检测以及版本的更新

    当用户在当前站点停留时间比较长,中途站点进行升级更新之后,用户如果不刷新页面就任然停留在旧的页面里,如何让用户收到一个提示,引导用户进行更新操作呢?下面给大家介绍如何站点更新如何在生产环境提示用户更新,进行页面刷新操作,核心原理其实很简单
    2023-03-03
  • Vue项目使用svg图标实践

    Vue项目使用svg图标实践

    这篇文章主要介绍了Vue项目使用svg图标实践,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • vue学习记录之动态组件浅析

    vue学习记录之动态组件浅析

    动态组件指的是动态切换组件的显示与隐藏,这篇文章主要给大家介绍了关于vue学习记录之动态组件的相关资料,本文通过示例代码介绍介绍的非常详细,需要的朋友可以参考下
    2022-10-10
  • vue子组件如何使用父组件传过来的值

    vue子组件如何使用父组件传过来的值

    这篇文章主要介绍了vue子组件如何使用父组件传过来的值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • web面试vue自定义组件及调用方式

    web面试vue自定义组件及调用方式

    这篇文章主要介绍了web面试中常问到的关于vue自定义组件及调用方式,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2021-09-09
  • vue3与ts组件封装提高代码复用性

    vue3与ts组件封装提高代码复用性

    这篇文章主要为大家介绍了vue3与ts组件封装提高代码复用性示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07

最新评论