核心概念:Vue 模板中的逻辑运算
在 Vue 的模板中,我们经常需要根据条件来显示或隐藏内容、动态绑定类名和样式等。这时就会用到 JavaScript 的逻辑运算符:&& (与)、|| (或)、! (非)。
这些运算符在 Vue 模板中的工作方式与在纯 JavaScript 中完全一致。
1. 与 (AND) - &&
-
功能:只有当两个操作数都为真值时,整个表达式才返回真。如果第一个操作数为假,则直接返回第一个操作数的值( falsy value );否则返回第二个操作数的值。
-
模板中的应用 :常用于条件渲染。例如,"当某个条件成立时,才渲染某个元素"。
<template>欢迎,{{ user.name }}!
请登录
</template> <script> export default { data() { return { user: { loggedIn: true, name: '张三' }, loading: false, items: [{ id: 1, title: '项目1' }] }; } }; </script><!-- 另一个例子:当数据加载完成且有数据时才显示列表 --> <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>页面展示

2. 或 (OR) -
||-
功能:如果第一个操作数为真,则返回第一个操作数的值;否则返回第二个操作数的值。
-
模板中的应用 :常用于提供默认值 或多条件判断。
<template>你好,{{ user.name || '游客' }}!
</template> <script> export default { data() { return { user: { name: '', // 空名字,会触发默认值 role: 'editor' } }; } }; </script><!-- 多条件判断:用户是管理员或内容编辑者时,显示管理面板 --> <div v-if="user.role === 'admin' || user.role === 'editor'"> <button>管理面板</button> </div> </div>页面展示

3. 非 (NOT) -
!-
功能 :取反操作。如果操作数为真,则返回
false;如果为假,则返回true。 -
模板中的应用 :常用于取反条件。
<template>内容加载完成!
加载中...</template> <script> export default { data() { return { loading: true, isAuthenticated: false }; } }; </script><!-- 当用户未认证时,显示登录按钮 --> <button v-if="!isAuthenticated">登录</button> <button v-else>退出</button> </div>页面展示

-
-
相关推荐
球球pick小樱花1 天前
游戏官网前端工具库:海内外案例解析前端Hardy1 天前
干掉 Virtual DOM?尤雨溪开始"强推" Vapor Mode?用户60572374873081 天前
AI 编码助手的规范驱动开发 - OpenSpec 初探狗胜1 天前
AI观察日记 2026-03-02|CLAUDE、TYPE、APPFUNCTIONS:掘金热门里的下一步信号喝水的长颈鹿1 天前
【大白话前端 02】网页从解析到绘制的全流程明君879971 天前
Flutter 实现 AI 聊天页面 —— 记一次 Markdown 数学公式显示的踩坑之旅用户14536981458781 天前
VersionCheck.js - 让前端版本更新变得简单优雅米饭同学i1 天前
微信小程序实现随机撒花效果Arthur14726122865471 天前
模块化和组件化的区别codingWhat1 天前
整理「祖传」代码,就是在开发脚手架?热门推荐
01GitHub 镜像站点02OpenClaw 使用和管理 MCP 完全指南03OpenClaw + 飞书(Feishu)环境搭建指南04Claude Code + GLM4.7 避坑指南:解决 Unable to connect to Anthropic services05Clawdbot部署教程:解决‘gateway token missing’授权问题的完整步骤06OpenClaw优化飞书API 额度已耗尽问题07【OpenClaw 本地实战 Ep.3】突破瓶颈:强制修改 openclaw.json 解锁 32k 上下文记忆08Window 10部署openclaw报错node.exe : npm error code 12809小黑课堂计算机二级WPSoffice题库软件下载安装教程(2026年3月最新版)10OpenClaw大龙虾机器人完整安装教程