前端框架Hui LayerUi所遇到弹出层方法调用的问题

1 篇文章 0 订阅
1 篇文章 0 订阅

在写代码的时候想做一个button关闭弹出层的功能,结果发现在button调用子页面的javascript:close();,再到子页面调用父页面的

function close(){
    parent.layer.close(parent.index);
}
方法出现死循环,在通过多次的调整后发现问题还是出现在对layerUi 中的弹出层部分。
layer.close(index)

为了达到父页面打开包含有子页面的弹出层,子页面中的button能关闭子页面所在弹出层,这个功能,放弃使用parent方法来取值和方法。

直接采用Hui中父页面的layer_show()与子页面中layer_close()即可达到要求,从底层来看,也是从已封装好的js方法中调用parent来完成父子页面间的交互。

过程中一个有意思的情况是,老代码中有写了layer_show() js方法,然而在Hui中有个同名的方法,在js中想调用到自己写的layer_show()方法,不论是通过直接的layer_show()还是通过this.layer_show(),所调用的方法实现均是通过Hui框架中的方法。

自己所做出的一个猜想大概是所调用的方法按照js中的加载顺序来调用。

而在parent.layer.close()那部分中,大概是已经忽视了layer部分,因此才会调用到子页面本身的close()方法,造成内存溢出。慎用吧,以后还是尽量用已经封装好的框架还是比较安全一些。


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值