4
を再利用からVueのを防ぐ:はaggresively DOM要素を次のスニペットCondider
<template v-if="tryIsMobile" >
<div class='device device-mobile-portrait' :class="deviceClass">
<div class="device-scroller-container">
<div class='device-scroller'>
<img id='tryit-img-mobile' :src="srcUrlMobile" v-on:load="onImgLoad" v-on:error="onImgError"/>
</div>
</div>
</div>
</template>
<template v-else>
<div class='device device-tablet-landscape' :class="deviceClass" >
<div class="device-scroller-container">
<div class='device-scroller'>
<img id='tryit-img-tablet' :src="srcUrlTablet" v-on:load="onImgLoad" v-on:error="onImgError"/>
</div>
</div>
</div>
</template>
このコードは、条件付きで2枚の画像の一方をレンダリングします。ユーザの操作によっては、実際に表示されるイメージがトグルされることになります。 からtryit-img-tablet
に切り替えると、tryit-img-mobile
の一部として読み込まれた画像は、すぐに異なる次元で表示されます。ただし、画像が新しいソース:src="srcUrlTablet"
をロードしている間は、src :src="srcUrlMobile"
の画像が表示されます。
これはおそらく、両方のテンプレートに同じimg-tagを使用しているVueによるものです。 Vueにこれをさせないようにするには、別のimg-tagsを使用するのですか?
は 'キー="デスクトップのように、いくつかのユニークな値で、あなたの 'device'要素に' key'属性を追加します。 "と' key = "mobile"とします。それはVueに要素を再利用しないよう伝えます。 –
@JosephSilber:それを解決したようだwoeha!私が受け入れるのが嬉しいです。 –