模板语法(1)

news/2024/10/27 16:22:48/

一、文本:

html中通过{{}}(双大括号)中可以把Vue对象中的数据插入到网页中。并且只要Vue对象上对应的值发生改变了,那么html中双大括号中的值也会立马改变。

<script setup name="App">import { ref } from 'vue'let username = ref('张三')function onModifyUsername() {username.value = '李四'}
</script><template><p>用户名:{{ username }}</p><button @click="onModifyUsername">修改用户名</button>
</template>

当然,如果在html{{}}中,第一次渲染完成后,不想要跟着后期数据的更改而更改,那么可以使用v-once指令来实现。示例代码如下:

<p v-once>{{username}}</p>

二、显示原生的HTML

有时候我们的Vue对象中,或者是后台返回给我们一个段原生的html代码,我们需要渲染出来,那么如果直接通过{{}}渲染,会把这个html代码当做字符串。这时候我们就可以通过v-html指令来实现。示例代码如下:

<script setup name="App">let code = "<h1>欢迎来到知了课堂</h1>"
</script><template><div v-html="code"></div>
</template>

三、属性绑定

如果我们想要在html元素的属性上绑定我们Vue对象中的变量,那么需要通过v-bind来实现。比如以下代码是不行的:

<script setup name="App">let classname = "main"
</script><template><div class="classname">粉红色的回忆</div>
</template><style scoped>.main{background-color: pink;}
</style>

需要使用v-bind才能生效:

<template><div v-bind:class="classname">粉红色的回忆</div>
</template>

或者可以把v-bind 省略,仅保留:class 即可:

<template><div :class="classname">粉红色的回忆</div>
</template>

四、使用JavaScript表达式:

在使用了v-bind,或者{{}}的语法中。我们还可以执行一个JavaScript表达式。示例代码如下:

<script setup name="App">let temp = 19;
</script><template><div>{{ temp>18?'出去玩':'回家睡觉' }}</div>
</template>

注意,只能是JavaScript表达式,不能是语句,比如var a=1;a=2;这样的是js语句,不是表达式了。

五、条件判断:

在模板中,可以根据条件进行渲染。条件用到的是v-ifv-else-if以及v-else来组合实现的。示例代码如下:

<script setup name="App">let weather = 'sun';
</script><template><p v-if="weather == 'sun'">今天去公园玩!</p><p v-else-if="weather == 'rain'">今天去看电影!</p><p v-else>今天哪儿也不去!</p>
</template>

六、v-show和v-if:

v-if是“真正”的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。 v-if也是惰性的:如果在初始渲染时条件为假,则什么也不做——直到条件第一次变为真时,才会开始渲染条件块。 相比之下,v-show就简单得多——不管初始条件是什么,元素总是会被渲染,并且只是简单地基于CSS进行切换。 一般来说,v-if有更高的切换开销,而v-show有更高的初始渲染开销。因此,如果需要非常频繁地切换,则使用v-show较好;如果在运行时条件很少改变,则使用v-if较好。

 


http://www.ppmy.cn/news/1542373.html

相关文章

【ArcGIS Pro实操第4期】绘制三维地图

【ArcGIS Pro实操第4期】绘制三维地图 ArcGIS Pro绘制三维地图-以DEM高程为例参考 如何使用ArcGIS Pro将栅格数据用三维的形式进行表达&#xff1f;在ArcGIS里可以使用ArcScene来实现&#xff0c;ArcGIS Pro实现原理跟ArcScene一致。由于Esri未来将不再对ArcGIS更新&#xff0c…

基于SpringBoot的酒店管理系统的设计与实现

摘要 酒店管理系统的设计旨在提供快捷高效的住宿资源管理方案&#xff0c;帮助管理员实现对酒店内房间、客户信息、订单的全方位管理&#xff0c;同时为用户提供便捷的预订和查询功能。本系统基于Spring Boot框架&#xff0c;结合前端框架和数据库设计&#xff0c;构建一个用户…

Linux TCP CC状态机

万字详文&#xff1a;TCP 拥塞控制详解 - 知乎bcc/tools/tcpcong.py at master iovisor/bccbcc/tools/tcpcong_example.txt at master iovisor/bcc 1.状态机 2.tcp map

Git process for submit and download

git init git add . git status git commit -m “commits more again” git remote add origin https://gitee.com/gong-dadian/full-stack-demos.git (first time?!) or git remote add origin gitgitee.com:gong-dadian/full-stack-demos.git git push origin master o…

Golang 怎么高效处理ACM模式输入输出

文章目录 问题bufio.NewReader高效的原理 再次提交 问题 最近在练习牛客上单调栈题目时&#xff0c;要求自己处理出入输出&#xff0c;也就是读题库要求的输入&#xff0c;计算最终结果&#xff0c;并打印输出 当我用fmt.Scan处理输入&#xff0c;用fmt.Println处理输出时&am…

基于树型结构实现顺序结构堆

目录 前言 一、树 1、树的概念与结构 2、树的相关术语 3、二叉树 4、满二叉树 ​ 5、完全二叉树 ​ 6、二叉树的存储 1、顺序结构 2、链式结构 二、堆 1、堆的结构 2、堆的初始化 3、入堆&#xff08;大根堆&#xff09; 4、出堆&#xff08;大根堆&#xf…

Spring MVC 知识点全解析

Spring MVC 知识点全解析 Spring MVC 是一个基于 Java 的请求驱动的 Web 框架&#xff0c;属于 Spring 框架的一部分&#xff0c;广泛用于构建企业级 Web 应用程序。本文将详细阐述 Spring MVC 的核心知识点&#xff0c;包括其工作原理、关键组件、配置、请求处理、数据绑定、…

ffmpeg的视频滤镜: 抠图-chromakey

滤镜简述 chromakey 官网链接 》 https://ffmpeg.org/ffmpeg-filters.html#chromakey-1 这个滤镜主要用于抠图&#xff0c;并且背景要是纯色背景&#xff0c;比如绿幕、蓝幕。 滤镜的使用 参数 color <color> ..FV.....T. set the chromakey key c…