Vue——v-bind指令

news/2024/7/10 1:10:08 标签: vue

给标签动态绑定一个属性

作用: 动态的去绑定一个或者多个特性(属性)

<body>
    <img id="sel" v-bind:src="src"></img>
    
    <!-- 可以省略v-bind -->
    <!-- <img id="sel" :src="src"></img> 效果同上--> 
    
    <script>
        let vm = new Vue({
            el:"#sel",
            data:{
                src:"./img"
            }
        })    
    </script>
</body>

在这里插入图片描述


给标签动态绑定一个特性名

<body>
    <img id="sel" :[key]="val"></img>
    <!-- 可以省略v-bind -->
    <!-- <img id="sel" :src="src"></img> -->
    <script>
        let vm = new Vue({
            el:"#sel",
            data:{
                key:"src",
                val:"./img"
            }
        })    
    </script>
</body>

最终的标签结果跟上面一样


给标签添加多个属性

<body>
    <img id="sel" v-bind="{[key]:val,[key1]:val1}"></img>
    <script>
        let vm = new Vue({
            el: "#sel",
            data: {
                key: "src",
                val: "./img",
                key1: "title",
                val1: "test"
            }
        })    
    </script>
</body>

在这里插入图片描述

给元素添加多个类名

<body>
    <img id="sel" class="c1" :class="much"></img>
    <script>
        let vm = new Vue({
            el: "#sel",
            data: {
                much:[
                    "c2","c3","c4"
                ]
            }
        })    
    </script>
</body>

在这里插入图片描述
我们可以通过数组或者对象的方式,动态添加多个类名过去。需要注意的是,如果标签原本有class,则会叠加到一起,且优先级高于vue动态添加(因为行内元素优先级高)。

  • 在数组语法中也可以使用三元表达式来切换class
<div v-bind:class="[isActive ? activeClass : '', errorClass]"></div>

也可以用绑定class的方法为style绑定属性

  • 绑定style
    • 使用对象语法
      看着比较像CSS,但其实是一个JavaScript对象
      CSS属性名可以用驼峰式(camelCase)或者短横线分隔(kebab-case)来命名
      但是使用短横线分隔时,要用引号括起来
      <div v-bind:style="{ fontSize: size + 'px' }"></div>
      
      data: {
        size: 30
      }
      
      也可以直接绑定一个样式对象,这样模板会更清晰:
      <div v-bind:style="styleObject"></div>
      
      data: {
        styleObject: {
          fontSize: '13px'
        }
      }
      
    • 使用数组语法
      数组语法可以将多个样式对象应用到同一个元素
      <div v-bind:style="[styleObjectA, styleObjectB]"></div>
      
  • 缩写: :
  • 修饰符:
    修饰符 (modifier) 是以英文句号 . 指明的特殊后缀,用于指出一个指令应该以特殊方式绑定。
    • .camel
      由于绑定特性时,会将大写字母转换为小写字母,如:
      <!-- 最终渲染的结果为:<svg viewbox="0 0 100 100"></svg> -->
      <svg :viewBox="viewBox"></svg>
      
      所以,Vue提供了v-bind修饰符 camel,该修饰符允许在使用 DOM 模板时将 v-bind 属性名称驼峰化,例如 SVG 的 viewBox 属性
      <svg :view-box.camel="viewBox"></svg>
      

http://www.niftyadmin.cn/n/1570166.html

相关文章

用python turtle画人_使用python turtle画高达

我就废话不多说了&#xff0c;直接上代码吧&#xff01; import turtle tturtle.Turtle() turtle.Turtle().screen.delay(0) tleftturtle.Turtle() #第一部分 t.penup() t.goto(0,0) t.pendown() t.left(20) t.forward(110) t.left(25) t.forward(40) t.left(100) t.circle(180…

vue——v-for指令

在v-for中使用数组 用法&#xff1a;(item, index) in items index为数组下标 <ul id"app"><li v-for"(person, index) in persons">{{ index }}---{{ person.name }}---{{ person.age }}</li> </ul>const vm new Vue({el: #ap…

python字符串的编码方式_Python中的字符串和编码

1.ASCII、Unicode和UTF-8的关系&#xff1a; 字符 ASCII Unicode UTF-8 A 01000001 00000000 01000001 01000001 中 x 01001110 00101101 11100100 10111000 10101101 ASCII编码实际上可以被看成是UTF-8编码的一部分 用记事本编辑的时候&#xff0c;从文件读取的UTF-8字符被转换…

编写一个程序将摄氏温度转为华氏温度PYTION_顺序程序设计实例

例1&#xff1a;有人用温度计测量出用华氏法表示的温度&#xff08;如69℉&#xff09;&#xff0c;现在要求把它转换为以摄氏度表示的温度&#xff08;如20℃&#xff09;解题思路&#xff1a;这个问题的算法很简单&#xff0c;关键在于找出二者之间的转换公式。根据物理学知识…

vue的v-model指令

作用&#xff1a;双向数据绑定&#xff0c;只能用于表单元素上 <body><input id"test" type"text" v-model"entry"><script>let vm new Vue({el:"#test",data:{entry:""}})</script> </body&g…

树状数组 区间加 区间求和_02 创建数组

上一小节我们学习了先创建一个序列型对象&#xff0c;再基于此生成一个数组。但是这样也有一定的局限性&#xff0c;因为如果我们创建的数组比较大&#xff0c;比方说100100的大小&#xff0c;那就有点麻烦了。实际上&#xff0c;Numpy内置了很多创建数组的方式&#xff0c;除了…

vue的侦听器及怎么侦听数组

作用 侦听属性 响应数据的变化&#xff0c;当数据发生改变的时候 会立即执行对应的函数。 <body><div id"test"><input type"text" v-model"entry"></div><script>let vm new Vue({el: "#test",data…

android 串口调试工具_只需几行代码 ESP32秒变无线串口调试神器

串口调试工具对于广大电子工程师和电子爱好者来说再熟悉不过了&#xff0c;常见的有USB转TTL串口线&#xff0c;另外还有一些无线串口调试工具&#xff0c;通过蓝牙、2.4G、WIFI等方式实现串口数据无线透传。无线连接方式省去了线缆的束缚&#xff0c;带来的好处也是不言而喻的…