Vue 的插值语法
插值表达式的使用
- 将 data 中的文本数据,插入到HTML中可以通过 Mustache 语法(也就是双大括号),数据是响应式的
<div id="app">
<h2>Hello {{message}}</h2>
<h2>{{firstName}} {{lastName}}</h2>
<h2>{{number * 2}}</h2>
</div>
<script src="../js/vue.js"></script>
<script>
const app = new Vue({
el: '#app',
data: {
message: 'World',
firstName: 'Lan',
lastName: 'Duo',
number: 100
}
})
</script>
v-once
- 该指令后面不需要跟任何表达式
- 比如v-for后面是由跟表达式的
- 该指令表示元素和组件只渲染一次,不会随着数据的改变而改变。
<h2 v-once>{{message}}</h2>
v-html
- 我们从服务器请求到的数据本身就是一个HTML代码直接通过{{}}来输出,会将HTML代码也一起输出。
- 该指令后面往往会跟上一个string类型
- 会将string的html解析出来并且进行渲染
<div id="app">
<div>{{link}}</div>
<div v-html="link"></div>
<!-- v-html 将html元素直接渲染到页面 -->
</div>
<script src="../../js/vue.js"></script>
<script>
const app = new Vue({
el: '#app',
data: {
link: '<a href="http://www.baidu.com">百度一下</a>'
}
})
</script>
v-text
- 作用和 Mustachez 比较相似:都是用于将数据显示在界面中
- 通常情况下,接受一个string类型
<h2 v-text="message"></h2>
v-pre
- 用于跳过这个元素和它子元素的编译过程,用于显示原本的 Mustache 语法
- 如果我们想在页面上显示 {{}} 时使用
- 第一个h2元素中的内容会被编译解析出来对应的内容
- 第二个h2元素中会直接显示{{message}}
<h2>{{message}}</h2>
<h2 v-pre>{{message}}</h2>
v-cloak(cloak: 斗篷)
- 此指令可以解决使用插值表达式页面闪烁问题
- 如果网速慢,而该标签内容是变量没有请求响应回来的时候,页面上先不显示该标签(vue给该标签加了css样式),当响应回来的时候改标签默认将css样式去除。
<style>
[v-cloak] {
display: none;
}
</style>
</head>
<body>
<div id="app">
<h2 v-cloak>{{message}}</h2>
</div>
<script src="../js/vue.js"></script>
<script>
setTimeout(() => {
const app = new Vue({
el: '#app',
data: {
message: 'Hello World'
}
})
}, 2000)
</script>
本文来自博客园,作者:懒惰ing,转载请注明原文链接:https://www.cnblogs.com/landuo629/p/12408712.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?