VUE3与Uniapp 五 (v-if、v-show和template、v-for的使用)

xml 复制代码
<template>
	<!-- v-if如果是false,则不会出现在DOM中,不会被渲染;
	v-show如果为false,则会出现在DOM中,并加载资源(如图片),只是CSS隐藏了。 -->
	<view v-if="day===1">星期1</view>
	<view v-else-if="day===2">星期2</view>
	<view v-else-if="day===3">星期3</view>
	<view v-else-if="day===4">星期4</view>
	<view v-else-if="day===5">星期5</view>
	<view v-else-if="day===6">星期6</view>
	<view v-else-if="day===7">星期7</view>
	<view v-else>日期正确</view>
	
	<!-- template配合v-if使用,template并不会被加载到DOM中
	如果template换成view,则<view>123</view>被view包裹,级别降低。
	但,使用template,<view>123</view>不会被包裹,template没被加载到DOM中 -->
	<template v-if="true">
		<view>123</view>
	</template>
	
	<template v-else>
		<view>456</view>
	</template>

	<!-- v-for和v-if不能在同一个标签中
	<view v-for="item in phones " v-if="true">
		<text>{{item}}</text>
	</view> -->
	
	<!-- 同时使用v-for和v-if时,把其分别写在不同标签内 -->
	<!-- 在v-for中,养成写key的好习惯,否则增删改列表时会出错,小程序中也会出现报错 -->
	<template v-for="(item, index) in phones" :key="item.id">
		<view v-if="true">
			<text>{{item.name}}</text>
		<view>
	</template>
</template>

<script setup>
	import {ref} from "vue";
	
	let day = ref(1);

	let phones = ref([
		{id:11, name:"小米"}
		{id:11, name:"华为"}
		{id:11, name:"苹果"}
		{id:11, name:"荣耀"}
	]);
</script>

<style lang="scss">

</style>
相关推荐
梦醒沉醉34 分钟前
7、表达日期和时间(前朝遗老Date)
javascript
白雾茫茫丶1 小时前
Vibecoding 一个主题切换动画库:13 种揭幕方式
前端·vue.js·react.js
雪芽蓝域zzs1 小时前
第四十九节:TagsView 右键菜单(带三角箭头)给每个 tag 增加**鼠标右键菜单**(右键标签弹出:关闭、关闭其他、关闭全部)
前端·javascript·vue.js
এ慕ོ冬℘゜1 小时前
从零开发移动端医院挂号页面:适配、交互与前端实现详解
前端·javascript
宁渡AI大模型2 小时前
AI 全栈面试新趋势:Vibe Coding、前端、Java 后端高频面试题深度解析|河南宁渡科技有限公司编程教程
java·javascript·人工智能·python·ai大模型
东风微鸣2 小时前
AI依赖更新别裸奔🚨
javascript
研☆香2 小时前
echarts图表的使用方法
javascript
志尊宝2 小时前
Vue3 零基础每日笔记(024):组件的创建与使用——从 import 到自动导入
前端·vue.js·笔记·前端框架·html5
2501_915918412 小时前
怎么把 Python 写的 Flet 应用打包成 iOS App 并上架 App Store?
android·ios·小程序·https·uni-app·iphone·webview
Geek_Vison3 小时前
小程序容器如何抹平系统差异,让一个小程序运行在 iOS、安卓、鸿蒙和电脑端
小程序·uni-app·harmonyos·mpaas