v-cloak

Vue 里的 v-cloak 到底是什么?(超级通俗讲解)

v-cloakVue 内置的指令,专门用来解决一个问题:

页面加载时,闪现 {{插值表达式}} 的问题

也就是俗称的 "闪烁" :页面刚加载 → 先显示 {``{ name }} → 然后才变成真实数据v-cloak 就是让这个 {{}} 在 Vue 渲染完成前隐藏


它的原理超级简单

  1. 你给元素加 v-cloak
  2. Vue 没编译完成前:元素保留 v-cloak 属性
  3. Vue 编译完成后:自动删掉 v-cloak 属性

配合 CSS 就能实现:

css

复制代码
/* 只要有 v-cloak 属性,就隐藏这个元素 */
[v-cloak] {
  display: none !important;
}

怎么用?(复制即用)

1. 先加 CSS(必须加!)

css

复制代码
/* 全局 CSS 里加这一段 */
[v-cloak] {
  display: none !important;
}

2. 给需要的元素加上 v-cloak

html

预览

复制代码
<!-- 加在最外层容器最方便 -->
<div id="app" v-cloak>
  {{ message }}
</div>

✅ 效果:Vue 没加载好 → 不显示内容 Vue 加载好 → 自动显示 不会再看到 {``{ }} 闪一下。


常见使用场景

  • 使用 CDN 方式引入 Vue(最容易闪烁)
  • 页面网络慢、Vue 加载延迟
  • 首页大列表、大量插值表达式时防闪烁

小提醒

  • 不需要在 components 里注册
  • 不需要 data 定义
  • 它是 Vue 自带指令,直接用就行

总结

  • v-cloak = 防插值表达式闪烁
  • 必须配合 CSS v-cloak { display:none } 才能生效
  • 加在最外层容器,一劳永逸解决闪烁问题
相关推荐
唐小码8 小时前
裁员的风刮到了三线荒凉的城市
前端
晚安日记wanna8 小时前
React 为何不做双端 diff?Vue 与 React 更新逻辑的三层差异
前端·react.js·面试
flash俊杰8 小时前
AI 分段引擎与自动剪辑决策:从语义片段到时间线草稿的映射
前端·ai编程
flash俊杰8 小时前
Vue 3 响应式陷阱与状态单例:从 TDZ 白屏到跨进程 Proxy 剥离
vue.js
flash俊杰8 小时前
时间线交互引擎:从像素到帧的逆向映射与磁吸网格
前端
光影少年8 小时前
setImmediate 和 setTimeout(0) 的区别
android·前端·react.js·ios·前端框架
flash俊杰8 小时前
LLM 结构化输出的契约化工程:JSON Mode、Schema 约束与重试降级
前端·ai编程
༄久梦༒长醉༻8 小时前
AI面试助手:本地运行,一键备战
前端·ai编程
志尊宝8 小时前
Vue3 零基础每日笔记(046):声明式导航与编程式导航——useRouter / useRoute 双子星
vue.js·笔记·#vue #前端 #前端开发·#javascript·#vue.js
Web4Browser8 小时前
浏览器指纹逆向到底在分析什么:从 JavaScript 采集、Canvas 与 WebGL 到环境一致性校验
java·服务器·前端