前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >【Uni-App社区小程序】013-Class 与 Style 绑定

【Uni-App社区小程序】013-Class 与 Style 绑定

作者头像
訾博ZiBo
发布2025-01-06 15:34:14
发布2025-01-06 15:34:14
6600
代码可运行
举报
运行总次数:0
代码可运行

一、官方文档

1、地址

https://uniapp.dcloud.net.cn/use?id=class-%e4%b8%8e-style-%e7%bb%91%e5%ae%9a

2、内容

此外还可以用 computed 方法生成 class 或者 style 字符串,插入到页面中,举例说明:

代码语言:javascript
代码运行次数:0
复制
<template>
    <!-- 支持 -->
    <view class="container" :class="computedClassStr"></view>
    <view class="container" :class="{active: isActive}"></view>

    <!-- 不支持 -->
    <view class="container" :class="computedClassObject"></view>
</template>
<script>
    export default {
        data () {
            return {
                isActive: true
            }
        },
        computed: {
            computedClassStr () {
                return this.isActive ? 'active' : ''
            },
            computedClassObject () {
                return { active: this.isActive }
            }
        }
    }
</script>
用在组件上:

非H5端(非自定义组件编译模式)暂不支持在自定义组件上使用 Class与 Style 绑定;

二、应用

1、默认实现

代码:
代码语言:javascript
代码运行次数:0
复制
<template>
	<view>
		<view class="box">
			圆
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				
			}
		},
		methods: {
			
		},
	}
</script>

<style>
	.box{
		background: #007AFF;
		color: #FFFFFF;
		height: 350upx;
		width: 350upx;
		border-radius: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 50upx;
	}
</style>
运行结果:

2、绑定Class

代码:
代码语言:javascript
代码运行次数:0
复制
<template>
	<view>
		<!-- 注意两个c1一个是class,一个是变量名 -->
		<view class="box" :class="['c1','c2',c1]">
			圆
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				c1 : "c3",
			}
		},
		methods: {
			
		},
	}
</script>

<style>
	.box{
		background: #007AFF;
		color: #FFFFFF;
		height: 350upx;
		width: 350upx;
		border-radius: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 50upx;
	}
	.c1{
		border: #FF3333 10upx solid;
	}
	.c2{
		font-size: 180upx;
	}
	.c3{
		background: #1AAD19;
	}
</style>
运行结果:

(我们呢可以看到c1 c2 c3都生效了)

3、条件绑定Class(选择)

代码:
代码语言:javascript
代码运行次数:0
复制
<template>
	<view>
		<!-- 注意两个c1一个是class,一个是变量名 -->
		<!-- 注意这个三元运算符age>5?c1:c2 -->
		<view class="box" :class="['c1','c2',age>15?c1:c2]">
			圆
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				c1 : "c3",
				c2 : "c4",
				age : 10,
			}
		},
		methods: {
			
		},
	}
</script>

<style>
	.box{
		background: #007AFF;
		color: #FFFFFF;
		height: 350upx;
		width: 350upx;
		border-radius: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 50upx;
	}
	.c1{
		border: #FF3333 10upx solid;
	}
	.c2{
		font-size: 180upx;
	}
	.c3{
		background: #1AAD19;
	}
	.c4{
		background: #E80080;
	}
</style>
运行结果:

4、条件绑定Class(是否绑定)

代码:
代码语言:javascript
代码运行次数:0
复制
<template>
	<view>
		<!-- 注意这是大括号 -->
		<!-- 意思是如果isActive是true就绑定c1 -->
		<view class="box" :class="{'c1' : isActive}">
			圆
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				isActive : true,
			}
		},
		methods: {
			
		},
	}
</script>

<style>
	.box{
		background: #007AFF;
		color: #FFFFFF;
		height: 350upx;
		width: 350upx;
		border-radius: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 50upx;
	}
	.c1{
		border: #FF3333 10upx solid;
	}
</style>
运行结果:

5、绑定Style(与Class类似)

代码:
代码语言:javascript
代码运行次数:0
复制
<template>
	<view>
		<!-- 注意这是大括号 -->
		<!-- 意思是如果isActive是true就绑定c1 -->
		<view class="box" :class="{'c1' : isActive}" :style="{'color' : color}">
			圆
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				isActive : true,
				color : "#FF0000"
			}
		},
		methods: {
			
		},
	}
</script>

<style>
	.box{
		background: #007AFF;
		color: #FFFFFF;
		height: 350upx;
		width: 350upx;
		border-radius: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 50upx;
	}
	.c1{
		border: #FF3333 10upx solid;
	}
</style>
运行结果:
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、官方文档
    • 1、地址
    • 2、内容
      • 用在组件上:
  • 二、应用
    • 1、默认实现
      • 代码:
      • 运行结果:
    • 2、绑定Class
      • 代码:
      • 运行结果:
    • 3、条件绑定Class(选择)
      • 代码:
      • 运行结果:
    • 4、条件绑定Class(是否绑定)
      • 代码:
      • 运行结果:
    • 5、绑定Style(与Class类似)
      • 代码:
      • 运行结果:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档