遇到了一个关于image组件的问题,bindload就触发一次,但是network里疯狂请求图片?
emm,页面很简单,就这样一个结构:skyline模式的scroll-view与grid-view的组合: [这个z-image组件只是给image下面加了一行标题,其他基本都是透传] <scroll-view type="custom" :padding="[0, 8, 8, 8]" :show-scrollbar="false" scroll-y enable-back-to-top>
<grid-view type="masonry" :main-axis-gap="8" :cross-axis-gap="8">
<z-image v-for="(item, idx) in data.goods" :key="idx" :src="item.src" :title="item.title" @load="bindload" />
</grid-view>
</scroll-view>
<script setup>
const bindload = e => {
console.log('bindload', e.detail)
}
</script>
页面呢,看起来也很正常, bindload也确实执行了一次: [图片] 鬼畜的事情来了,一直在请求图片,几乎瞬间就有几百个请求。。。 [图片] 代码结构很简单没有复杂的东西,这个自定义的组件z-image只是给image按照固定宽度动态计算了一个等比高度style,顺便给下面封装了一个标题,其他啥也没干。 神奇的是如果是一个webview页面,它就正常的; 或者说在skyline的页面里,不放在scroll-view与grid-view的组合里,直接使用,也是ok的。 更神奇的是,说出来你可能不信其实我也不太信跟这有关,这点代码其实在重启[微信开发者工具]之前都是好的,重启之后就这样了,这期间从代码暂存记录上看是无任何改动的。 至于为啥要重启,是因为它提示要重启,mac版,版本是1.06.2502272 所以有点摸不着头脑了,到底是我对组件的使用有问题、还是skyline的问题,还是开发者工具的问题呢。。。有人遇到过类似的问题吗? 或者说,有没有什么情况下,bindload只会执行一次,但确实会请求多次图片? -------------- 刚试了一下,把z-image换成直接使用image,问题依旧。