在Vue項目中,經(jīng)常使用gif動態(tài)圖來展示一些交互效果,但有時候我們會遇到gif重復(fù)播放的問題。這個問題實際上很簡單,只需要在圖片路徑后面添加一個隨機數(shù)即可。
<template> <img :src="`${imgUrl}?t=${timestamp}`" /> </template> <script> export default { data() { return { imgUrl: './img/loading.gif', timestamp: 0 } }, mounted() { setInterval(() =>{ this.timestamp = Date.now() }, 1000) } } </script>
上述代碼中,我們首先在data中定義了一個imgUrl和timestamp,imgUrl為要展示的gif圖片路徑,timestamp為一個隨機數(shù)。然后在mounted中使用setInterval函數(shù),每隔1秒更新一次timestamp,保證每次頁面刷新都會重新請求圖片資源。最后在模板中使用動態(tài)綁定的方式給img標(biāo)簽綁定src屬性。
通過以上方法,我們可以解決gif重復(fù)播放的問題,讓動態(tài)效果更加流暢。