<div v-for="item in imControls.messages" >
<p v-once>
<span class="" v-if="item.type==3">{{item.name}}:</span>
<span class="red" v-if="item.type==4">{{item.name}}:</span>
<span class="blue" v-if="item.type==2">{{item.name}}:</span>
<span class="grey" v-if="item.type==1">{{item.name}}:</span>
<span v-html="item.text"></span>
</p>
</div>
imControls.messages
存在,如果我不p
標籤上使用v-once
,這是確定的,但如果我使用一次V,它無法找到項目。vue.js我在'v-for'語句中使用'v-once',爲什麼找不到'item'?
的錯誤是
'vue.js:2574 [Vue warn]: Property or method "item" is not defined on the instance but referenced during render. Make sure to declare reactive data properties in the data option. (found in root instance)
vue.js:2217 Uncaught TypeError: Cannot read property 'type' of undefined'
你是異步加載'imControls.messages'嗎? – Saurabh
是的,imControls.messages可以改變,但我希望imControls.messages中的每個項目在渲染後不需要改變。因爲在item.text中,它有一些img標籤字符串,我不想多次加載img資源。 –