运行为支付宝小程序来构建淘宝小程序,image标签的@load会调用多次。
复现代码:
<template>
<view class="content">
<image v-for="(item,index) in images" :key="index" :src="item" @load="handleLoad"/>
</view>
</template>
<script>
export default {
data() {
return {
images: [
'https://y.taofen8.com/46630299545444b897ac25a9a6b3c99b.jpg'
],
index: 0
}
},
onLoad() {
},
methods: {
handleLoad() {
console.log(this.index ++)
},
}
}
</script>
<style>
</style>
运行结果打印0,1
理论上只有一个图片,@load只会调用一次,所以只打印一个0不会打印1的。另外相同的代码构建成快手小程序是好的,只会打印一次0。