微信小程序动态的显示或隐藏控件

  在微信小程序开发时,经常要用到一个控件会根据不同的情况和环境动态显示与隐藏这种情况,下面就来实践一把!上效果先


它的实现方法有两种,

第一种方法:单选法,就是隐藏与显示根据条件二选一,代码如下:

<view class="{{showView?'bright789_view_show':'bright789_view_hide'}}">

   <text class="bright789-text">我是被显示被隐藏控件</text>

 </view>

第二种方法:叠加法,就是先隐藏,如果是显示,再叠加一个显示,如果是隐藏就不动,代码如下

<view class="bright789_view_hide {{showView?'bright789_view_show':''}}">

   <text class="bright789-text">我是被显示被隐藏控件</text>

 </view>

   这种办法一开始看有点头晕,所以把它分解成两个状态:

显示状态:

因为showView是true,所以我们把它转成如下样子

<view class="bright789_view_hide bright789_view_show}">

   <text class="bright789-text">我是被显示被隐藏控件</text>

 </view>

看到了吧,后面的bright789_view_show会把前面的bright789_view_hide重叠上去,注意这里是重叠,所以顺序不能反过来像bright789_view_show {{showView?'':' bright789_view_show '}}这种是不行的

隐藏状态:

相当于如下代码:

<view class="bright789_view_hide }">

   <text class="bright789-text">我是被显示被隐藏控件</text>

 </view>

最后我把demo的js,wxml和wxss代码贴一下:

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)

    })

  }

})

 

Wxml文件代码:

<viewclass="page">

  <view >

     <buttonbindtap="onChangeShowState">{{showView?'隐藏':'显示'}}</button>

  </view>

  <view class="bright789_view_hide{{showView?'bright789_view_show':''}}">

    <textclass="bright789-text">我是被显示被隐藏控件</text>

  </view>

</view>

 

Wxss文件代码:

.bright789-text{

  font-size: 40rpx;

  line-height: 40px;

  color: #ff0000;

}

.bright789_view_hide{

    display: none;

}

.bright789_view_show{

    display: block;

}

 

  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值