uniapp点击图片预览,关闭预览图片后自动触发onshow生命周期,怎么解决?

第一,页面的数据会实时更新,所以接口请求需要在onshow中,变量figh初始为true,数据列表信息可直接调用获取

当点击查看图片时改变,变量figh为false,此时onshow里面的this.postlist()不触发。

此时,点击别的页面,在回到当前页面,onshow里面的this.postlist()也不触发了,怎么还让onshow里面的this.postlist()触发,未解决这个问题。

我为何要点击图片预览,禁止触发onshow里面的this.postlist(),是因为预览图片关闭,不设置变量figh为false,会触发this.postlist()事件,观看的位置会回到顶部,非常影响用户体验。有大佬解决=办法吗?

我原本想着,预览之后,点击关闭预览的事件做处理,再关闭后,将变量figh为true, 发现这个关闭是用户操作的,没有事件可绑定。这个api对小程序没用

有哪位大哥能指点一二。谢谢

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
uniapp 中,子组件的 `onShow` 生命周期函数是不会被自动触发的。因为 `onShow` 生命周期是页面级别的,而子组件只是页面的一部分,所以只有在子组件被显示时,才会触发子组件的 `onShow` 生命周期。 如果你想在子组件中手动触发 `onShow` 生命周期,可以在父组件中监听子组件的显示和隐藏事件,并在事件回调函数中手动调用子组件的 `show` 和 `hide` 方法。具体实现可以参考以下代码示例: ```html <!-- 父组件模板代码 --> <template> <div> <button @click="showChild">显示子组件</button> <button @click="hideChild">隐藏子组件</button> <Child ref="child"></Child> </div> </template> <script> import Child from '@/components/Child' export default { components: { Child }, methods: { showChild() { this.$refs.child.show() }, hideChild() { this.$refs.child.hide() } } } </script> ``` ```html <!-- 子组件模板代码 --> <template> <div v-show="visible"> <!-- 子组件内容 --> </div> </template> <script> export default { data() { return { visible: false } }, methods: { show() { this.visible = true this.onShow() }, hide() { this.visible = false }, onShow() { // 子组件的 onShow 生命周期 } } } </script> ``` 在父组件中,我们通过 `ref` 属性获取了子组件的实例,并在按钮的点击事件中调用了子组件的 `show` 和 `hide` 方法。在子组件中,我们定义了 `visible` 属性来控制子组件的显示和隐藏,同时在 `show` 方法中手动触发了 `onShow` 生命周期
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值