当前位置: 首页 > article >正文

《Vue零基础入门教程》第十三课:条件渲染

 往期内容

《Vue零基础入门教程》第六课:基本选项

《Vue零基础入门教程》第八课:模板语法

《Vue零基础入门教程》第九课:插值语法细节

《Vue零基础入门教程》第十课:属性绑定指令

《Vue零基础入门教程》第十一课:事件绑定指令

《Vue零基础入门教程》第十二课:双向绑定指令

1) 什么是条件渲染

当条件满足时, 渲染到页面

主要指令: v-ifv-show

2) 示例

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script src="../node_modules/vue/dist/vue.global.js"></script>
  </head>
  <body>
    <div id="app">
      <!-- 当一个内容有复杂逻辑时, 使用v-if -->
      <div v-if="flag">我是通过v-if控制的</div>
      <div v-else>我是通过v-else控制的</div>
      <!-- 当一个内容需要切换显示时, 使用v-show -->
      <div v-show="flag">我是通过v-show控制的</div>
      <div v-show="!flag">我是通过v-show控制的</div>
    </div>

    <script>
      const { createApp } = Vue

      const vm = createApp({
        data() {
          return {
            flag: true,
          }
        },
      }).mount('#app')
    </script>
  </body>
</html>
  • 当flag为true时, 两个元素都可以显示
  • 当flag为false时, 两个元素都不显示, 区别
    • v-if: 不会创建元素
    • v-show: 创建元素, 但是display=none

3) 使用表达式

在指令表达式中, 除了使用变量外, 也可以使用表达式

<div v-if="flag == true">这是用v-if渲染的元素</div>

案例

💡 需求

通过按钮控制元素的显示/隐藏

示例

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script src="../node_modules/vue/dist/vue.global.js"></script>
  </head>
  <body>
    <div id="app">
      <button @click="flag = !flag">切换显示/隐藏</button>
      <div v-show="flag">div显示的内容</div>
    </div>

    <script>
      const { createApp } = Vue

      const vm = createApp({
        data() {
          return {
            flag: true,
          }
        },
        methods: {
          toggle() {
            // if (this.flag == true) {
            //   this.flag = false
            // } else {
            //   this.flag = true
            // }
            this.flag = !this.flag
          },
        },
      }).mount('#app')
    </script>
  </body>
</html>
  • 绑定按钮的点击事件
  • 当flag==true时点击, flag先取反, 再保存, 此时flag为false
  • 当flag==false时点击, flag先取反, 再保存, 此时flag为true


http://www.kler.cn/a/420661.html

相关文章:

  • 【AI系统】TVM 实践案例
  • 使用CertD全自动申请和部署SSL证书至服务器
  • WEB开发: 丢掉包袱,拥抱ASP.NET CORE!
  • Netty面试内容整理-Netty 概述
  • 思维导图+实现一个登录窗口界面
  • rest-assured multiPart上传中文名称文件,文件名乱码
  • PowerShell:查找并关闭打开的文件
  • Modern Effective C++ 条款二十三:理解std::move和std::forward
  • java 网络编程 详解
  • 数据结构判断两棵树是否相等
  • 九,[极客大挑战 2019]LoveSQL1
  • JavaWeb—— 构建互联网世界的 “魔法砖石” 与实战密码
  • 企业品牌曝光的新策略:短视频矩阵系统
  • 多模态抑郁估计论文研读|Multi-modal Depression Estimation Based on Sub-attentional Fusion
  • 【QNX+Android虚拟化方案】123 - 如何配置qnx侧GPIO_IRQ中断和PMIC_GPIO_IRQ中断
  • 【Android】View工作原理
  • Linux 内核系统架构
  • Kafka-Consumer源码分析
  • USB 声卡全解析:提升音频体验的得力助手
  • 网络安全之常用安全设备功能及作用_设备管理器安全设备是什么
  • Runway 技术浅析(六):文本到视频(Text-to-Video)
  • GPT时代的BI革命:智能报表系统如何颠覆传统决策
  • qt音频实战
  • Vue 实现无线滚动效果
  • Linux下anaconda安装环境
  • Docker和Docker Compose部署方式的区别以及各自适用的场景(ChatGPT-4o回答)