微信小程序中如何动态添加 class 属性

在微信小程序中,你可以使用setData方法来动态添加class。首先,在你的页面的js文件中,定义一个变量来存储需要动态添加的class,例如:

复制代码
data: {
  dynamicClass: ''
}

然后,在需要动态添加class的地方,使用setData方法来更新dynamicClass的值,例如:

复制代码
// 假设你想在点击按钮时动态添加class
onTapButton: function() {
  this.setData({
    dynamicClass: 'new-class'
  });
}

最后,在你的wxml文件中,使用动态绑定的方式来添加class,例如:

复制代码
<view class="{{dynamicClass}}">这是一个视图</view>

这样,当你点击按钮时,视图的class就会动态地变为new-class。

在组件中动态添加 class

.wxml

js 复制代码
<view class="toast {{closeToast}}"> </view>

首先,在wxml文件中,有一个<view>标签,它有两个class属性:toast{``{closeToast}}。这里的toast是一个静态的class,而{``{closeToast}}是一个动态的class,它的值会根据closeToast属性的值来动态变化。

.js

js 复制代码
Component({
  options: {
    addGlobalClass: true
  },
  properties: {
    closeToast:" "
  },
  methods: {   
    close() {	// 定义取消
      this.setData({closeToast:"toast show"})
    }
  }
})

在js文件中,这个组件使用了Component函数来定义。在options中,设置了addGlobalClass: true,这表示组件的样式将会继承全局样式。

properties中,定义了一个属性closeToast,它的类型是字符串,初始值为空字符串。

methods中,定义了一个方法close(),当这个方法被调用时,会通过setData方法将closeToast属性的值设置为"toast show",这样就会触发动态class的更新。

总结起来,这段代码的作用是:当调用组件的close()方法时,会将closeToast属性的值设置为"toast show",从而动态地给<view>标签添加一个名为"toast show"的class。

相关推荐
zy happy5 小时前
RuoyiApp 在vuex,state存储nickname vue2
前端·javascript·小程序·uni-app·vue·ruoyi
云起SAAS7 小时前
黄历万年历择吉日抖音快手微信小程序看广告流量主开源
微信小程序·小程序·ai编程·看广告变现轻·黄历万年历择吉日
2501_915918418 小时前
HTTP抓包工具推荐,Fiddler使用教程、代理设置与调试技巧详解(含HTTPS配置与实战案例)
http·ios·小程序·https·fiddler·uni-app·webview
一 乐11 小时前
个人理财系统|基于java+小程序+APP的个人理财系统设计与实现(源码+数据库+文档)
java·前端·数据库·vue.js·后端·小程序
腾讯云云开发12 小时前
小程序数据库权限管理,一看就会!——CloudBase新手指南
前端·数据库·微信小程序
有点笨的蛋13 小时前
从零搭建小程序首页:新手也能看懂的结构解析与实战指南
前端·微信小程序
一只小白菜~14 小时前
记录一下微信小程序里使用SSE
微信小程序·小程序·sse·小程序sse·小程序eventsource
小小王app小程序开发14 小时前
家政小程序拓展分析:从工具型产品到全链路服务生态的技术落地与商业破局
小程序
上海云盾安全满满14 小时前
APP小程序被攻击了该如何应对
网络·小程序
李慕婉学姐14 小时前
【开题答辩过程】以《基于微信小程序垃圾分类图像识别技术实现》为例,不会开题答辩的可以进来看看
spring boot·微信小程序·vue