出于明显的原因,我在Vue项目中使用了Vue-Lazyload.js(https://www.npmjs.com/package/vue-lazyload)。 我已经在整个项目中成功实现了这一点。但是现在我遇到了一个似乎无法解决的问题。
我有一个带有品牌的v-for循环,带有一个用于加载徽标的v-html。这不是理想的选择,但对我的项目来说是必需的。
router = routers.DefaultRouter()
router.register('users', views.UserProfileView),
router.register('rooms', views.UserRoomView),
router.register('messages', views.UserMessageView),
urlpatterns = [
path('', include(router.urls)),
]
v-html如下所示:
<div class="col-6 col-md-3 col-lg-2" v-for="brand in brands">
<a class="brand" :href="brand.url" v-html="brand.logo" v-lazy-container="{ selector: 'img' }"></a>
<a class="brandname" :href="brand.url">
{{brand.name}}
</a>
</div>
如您所见,我正在将v-lazy-container与“ img”上的选择器一起使用。
现在,除了列出徽标的内容外,我的Vue实例中还有一些数据会发生更改,但是每次任何数据更改时,所有徽标都会开始重新加载,就好像重新加载了整个虚拟DOM一样。
在其他情况下,它可以在图像上设置键。但是在这种情况下不会。
有人建议吗?