欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

微信小程序 实现动态显示和隐藏某个控件

程序员文章站 2023-08-13 19:33:33
微信小程序 实现动态显示和隐藏某个控件 在小程序的开发过程中,经常需要用到隐藏某个控件这种情况。 因为项目原本是需要将两个canvas切换,但是小程序的canvas支持...

微信小程序 实现动态显示和隐藏某个控件

在小程序的开发过程中,经常需要用到隐藏某个控件这种情况。

因为项目原本是需要将两个canvas切换,但是小程序的canvas支持的功能实在是少,本来就jquery mobile或者将canvas转为图片就可以很容易实现滑动效果,但是都不支持,最后只能是做一个canvas,需要时显示,不需要时隐藏。

实现方法:

logs.wxml

<view> 
 <button bindtap="onchangeshowstate">{{showview?'click to check idlereason':'click to check mtstatus'}}</button> 
</view> 
<view class="{{showview?'bright789_view_show':'bright789_view_hide'}}"> 
 <canvas canvas-id="piecanvas1" style="width:400px;height:280px;"></canvas> 
</view> 

logs.js

page({ 
 data: { 
  showview: true 
 }, 
 onload: function (options) { 
  // 生命周期函数--监听页面加载 
  showview: (options.showview == "true" ? true : false) 
 } 
 , onchangeshowstate: function () { 
  var that = this; 
  that.setdata({ 
   showview: (!that.data.showview) 
  }) 
 }, 
}) 

logs.wxss

.bright789_view_hide{ 
 display: none; 
} 
.bright789_view_show{ 
 display: block; 
} 

从上面三个页面的文件可以很明显看出逻辑:logs.wxml的onchangeshowstate按钮会在logs.js中触发一个事件,它会改变showview的值,而在logs.wxml中会根据showview的值确定画布canvas的class属性,而在logs.wxss中具体再设置两个class属性哪个是否显示

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!