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

vue中的与,或,非

核心概念:Vue 模板中的逻辑运算

在 Vue 的模板中,我们经常需要根据条件来显示或隐藏内容、动态绑定类名和样式等。这时就会用到 JavaScript 的逻辑运算符:&& (与)、|| (或)、! (非)。

这些运算符在 Vue 模板中的工作方式与在纯 JavaScript 中完全一致。


1. 与 (AND) - &&

  • 功能:只有当两个操作数都为真值时,整个表达式才返回真。如果第一个操作数为假,则直接返回第一个操作数的值( falsy value );否则返回第二个操作数的值。

  • 模板中的应用:常用于条件渲染。例如,“当某个条件成立时,才渲染某个元素”。

<template><div><!-- 当 user 存在且 loggedIn 为 true 时,才显示欢迎信息 --><p v-if="user && user.loggedIn">欢迎,{{ user.name }}!</p><p v-else>请登录</p><!-- 另一个例子:当数据加载完成且有数据时才显示列表 --><ul v-if="!loading && items.length"><li v-for="item in items" :key="item.id">{{ item.title }}</li></ul><p v-else-if="loading">加载中...</p><p v-else>暂无数据</p></div>
</template><script>
export default {data() {return {user: {loggedIn: true,name: '张三'},loading: false,items: [{ id: 1, title: '项目1' }]};}
};
</script>

页面展示


2. 或 (OR) - ||

  • 功能:如果第一个操作数为真,则返回第一个操作数的值;否则返回第二个操作数的值。

  • 模板中的应用:常用于提供默认值多条件判断

<template><div><!-- 提供默认值:如果 user.name 是假值(如空字符串、undefined),则显示‘游客’ --><p>你好,{{ user.name || '游客' }}!</p><!-- 多条件判断:用户是管理员或内容编辑者时,显示管理面板 --><div v-if="user.role === 'admin' || user.role === 'editor'"><button>管理面板</button></div></div>
</template><script>
export default {data() {return {user: {name: '', // 空名字,会触发默认值role: 'editor'}};}
};
</script>

页面展示


3. 非 (NOT) - !

  • 功能:取反操作。如果操作数为真,则返回 false;如果为假,则返回 true

  • 模板中的应用:常用于取反条件

<template><div><!-- 当不在加载状态时,显示内容 --><div v-if="!loading"><!-- 页面内容 --><p>内容加载完成!</p></div><div v-else>加载中...</div><!-- 当用户未认证时,显示登录按钮 --><button v-if="!isAuthenticated">登录</button><button v-else>退出</button></div>
</template><script>
export default {data() {return {loading: true,isAuthenticated: false};}
};
</script>

页面展示

http://www.xdnf.cn/news/1398835.html

相关文章:

  • Ansible 核心运维场景落地:YUM 仓库、SSH 公钥、固定 IP 配置技巧
  • [Windows] 剪映国际版CapCut 6.7.0 视频编辑处理,免费使用素材和滤镜
  • 拼团小程序源码分享拼团余额提现小程序定制教程开发源码二开
  • LeetCode 136. 只出现一次的数字
  • [论文阅读] 人工智能 + 软件工程 | 从“法律条文”到“Gherkin脚本”:Claude与Llama谁更懂合规开发?
  • 普蓝自研AutoTrack-4X导航套件平台适配高校机器人实操应用
  • k8s(自写)
  • docker安装Prometheus和Grafana 监控界面
  • 为多种业态注入智能化发展新活力的智慧地产开源了
  • 从Java全栈开发视角看企业级应用架构设计与实践
  • C++转置正方形矩阵
  • 掌握表单:React中的受控组件与表单处理
  • 【物联网】BLE 系统架构全景图
  • 关于PXIe工控机XH-PXIe7312双路25G网卡
  • Docker核心概念与镜像仓库操作指南
  • FlowUs AI-FlowUs息流推出的AI创作助手
  • uniapp监听物理返回按钮事件
  • Ansible主机模式与文件导入技巧
  • C++世界的大门——基础知识总结
  • 医疗AI时代的生物医学Go编程:高性能计算与精准医疗的案例分析(六)
  • 工业产品营销:概念、原理、流程与实践指南
  • 【浅尝Java】运算符全介绍(含除法取模运算各情况分析、位运算与移位运算分析、逻辑与条件运算符)
  • Raycast 使用指南:解锁 macOS 生产力新高度
  • Kotlin Android 水印功能实现指南:使用 Watermark 库
  • Netty 心跳与链路保活机制详解:保证高并发环境下的稳定连接
  • 互联网大厂大模型应用开发岗位面试:技术点详解与业务场景演练
  • Spark mapGroups 函数详解与多种用法示例
  • Java面试-MyBatis篇
  • 执行一条Select语句流程
  • python pyqt5开发DoIP上位机【诊断回复的函数都是怎么调用的?】