vue 内容渲染和属性绑定

  1. 内容渲染指令 1. 使用v-text指令,将数据采用纯文本方式填充其空元素中
    javascript 复制代码
    <script setup>
        import { reactive } from 'vue'
        let student = reactive({
            name: 'Jack',
            desc: '<h3>我是来自中国的小朋友!</h3>'
        })
    </script>
    <template>
      <!-- 使用v-text指令,将数据采用纯文本方式填充其空元素中 -->
      <div v-text="student.name"></div>
      <!-- v-text:以纯文本的方式显示数据 -->
      <div v-text="student.desc"></div>
      <!-- 下面的代码会报错:div 元素不是空元素 -->
      <!-- <div v-text="student.name">这是原始的div数据</div> -->
    </template>
    1. {``{ }}插值表达式:在元素中的某一位置采用纯文本的方式渲染数据

    <div>这是一个 DIV 元素,{{ student.name }},{{ student.desc }}</div>

    1. 使用v-html指令,将数据采用HTML语法填充其空元素中
    javascript 复制代码
    <script setup>
    
    import { reactive } from 'vue'
    
    let student = reactive({
        name: 'Jack',
        desc: '<h3>我是来自中国的小朋友!</h3>'
    })
    
    
    </script>
    
    <template>
    
        <!-- 使用v-html指令,将数据采用HTML语法填充其空元素中 -->
    
        <div v-html="student.name"></div>
    
        <!-- v-html:以 HTML 语法显示数据 -->
        <div v-html="student.desc"></div>
    
        <!-- 下面的代码会报错:div 元素不是空元素 -->
        <!-- <div v-html="student.name">这是原始的div数据</div> -->
    
    </template>
  2. 双向绑定指令
    1. v-model双向数据绑定指令,视图数据和数据源同步,

    2. 一般情况下v-model指令用在表单元素中:

      1. 文本类型的<input>和<textarea>元素会绑定value属性并侦听input事件

      2. <input type="checkbox">和<input type="radio">会绑定checked属性并侦听change事件

      3. <select>会绑定value属性并侦听change事件

    3. v-model的修饰符

  3. 属性绑定指令
    1. 响应式地绑定一个元素属性,应该使用v-bind:指令

    2. 如果绑定的值是null或者undefined,那么该属性将会从渲染的元素上移除

    3. 因为v-bind非常常用,我们提供了特定的简写语法:
      1.

      javascript 复制代码
      <script setup>
      import { reactive } from 'vue'
      let picture = reactive({
          src: 'https://uploadfile.bizhizu.cn/2015/0424/20150424015229741.jpg', // 图像地址
          width: 200 // 显示宽度
      })
      </script>
      <template>
          <input type="range" min="100" max="500" v-model="picture.width">
          <hr>
          <!-- v-bind: 为 src 属性绑定指定的数据源 -->
          <img v-bind:src="picture.src" v-bind:width="picture.width">
          <hr>
          <!-- : 是 v-bind: 的缩写形式 -->
          <img :src="picture.src" :width="picture.width">
          <hr>
          <!-- 如果绑定的值是 null 或者 undefined,那么该属性将会从渲染的元素上移除 -->
          <button @click="picture.width = null">设置宽度为NULL</button>
      </template>
    4. 直接使用v-bind来为元素绑定多个属性及其值
      1.

      javascript 复制代码
      <script setup>
      import {reactive} from 'vue'
      let attrs = reactive({
          class: 'error',
          id: 'borderBlue'
      })
      </script>
      <template>
          <!-- 直接使用 v-bind 来为元素绑定多个属性及其值 -->
          <button v-bind="attrs">我是一个普通的按钮</button>
      </template>
      <style>
          .error {
              background-color: rgb(167, 58, 58);
              color: white;
          }
      
          #borderBlue {
              border: 2px solid rgb(44, 67, 167);
          }
      </style>
相关推荐
^^为欢几何^^2 分钟前
lodash中_.difference如何过滤数组
javascript·数据结构·算法
Hello-Mr.Wang7 分钟前
vue3中开发引导页的方法
开发语言·前端·javascript
程序员凡尘34 分钟前
完美解决 Array 方法 (map/filter/reduce) 不按预期工作 的正确解决方法,亲测有效!!!
前端·javascript·vue.js
编程零零七4 小时前
Python数据分析工具(三):pymssql的用法
开发语言·前端·数据库·python·oracle·数据分析·pymssql
北岛寒沫5 小时前
JavaScript(JS)学习笔记 1(简单介绍 注释和输入输出语句 变量 数据类型 运算符 流程控制 数组)
javascript·笔记·学习
everyStudy5 小时前
JavaScript如何判断输入的是空格
开发语言·javascript·ecmascript
(⊙o⊙)~哦6 小时前
JavaScript substring() 方法
前端
无心使然云中漫步6 小时前
GIS OGC之WMTS地图服务,通过Capabilities XML描述文档,获取matrixIds,origin,计算resolutions
前端·javascript
Bug缔造者6 小时前
Element-ui el-table 全局表格排序
前端·javascript·vue.js
xnian_7 小时前
解决ruoyi-vue-pro-master框架引入报错,启动报错问题
前端·javascript·vue.js