微信小程序自定义导航隐藏和显示功能

网友投稿 337 2023-05-07


微信小程序自定义导航隐藏和显示功能

微信小程序中不能直接操作window对象,document文档,跟html的树结构不相同。

实现类似导航的隐藏显示,如图效果:

点击网络显示或隐藏网络中包含的内容。其他类似。

如果是jquery很方便实现,能直接操作document。在微信小程序中实现思路是:在逻辑层定义变量,通过setData赋值。

方法一:通过变量直接赋值,给每一个要控制显示的view定义变量

.wxml 代码:

视图容器

基础内容

表单组件

.js对应代码:

data: {

view1: true,

view2: true,

view3: true

},

opentype: function (e) {

var url = e.currentTarget.dataset.type

url = url + '/' + url

wx.navigateTo({

url: url

})

},

tigger: function (e) {

var num = e.currentTarget.dataset.num

if (num == 1) {

this.setData({

view1: !this.data.view1

})

} else if (num == 2) {

this.setData({

view2: !this.data.view2

})

} else if (num == 3) {

this.setData({

view3: !this.data.view3

})

}

}

通过data-num="1" 这中传值方式,设置对应的view1的值。

这种方法能够实现效果,但是在添加了新的view之后需要修改js代码,所以不是最优的方法。

方法二:

.wxml 代码:

网络

上传、下载

WebSocket

媒体

.js对应代码:

// index.js

var statusArrs = [false]

Page({

/**

* 页面的初始数据

*/

data: {

showArr: statusArrs

},

opentype: function (e) {

var url = e.currentTarget.dataset.url

url = '../' + url

wx.navigateTo({

url: url

})

},

//显示隐藏

tigger: function (e) {

var that = this;

var num = e.currentTarget.dataset.num

statusArrs[num] = !statusArrs[num]

that.setData({

showArr: statusArrs

})

}

})

方法二这种方式就简单实现了不修改js代码,添加了新的view也能控制隐藏显示。

以上所述是给大家介绍的微信小程序自定义导航隐藏和显示功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,会及时回复大家的。在此也非常感谢大家对我们网站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Retrofit Rxjava实现图片下载、保存并展示实例
下一篇:详解Angular2响应式表单
相关文章

 发表评论

暂时没有评论,来抢沙发吧~