首頁  >  問答  >  主體

"在vue.js 3中如何在表頭中插入圖片"

<p>我正在使用vue.js 3的v-data-table,並且想在表頭中插入圖片。 因此,我嘗試覆蓋表頭模板:</p> <pre class="lang-html prettyprint-override"><code><template v-for="header in headers" v-slot:[`header.${header.value}`]=" ;{ headers }"> {{ header.text }} </template> </code></pre> <p>這個方法是有效的。然而,如果我像這樣包含圖片,就會出現錯誤:</p> <pre class="lang-html prettyprint-override"><code><template v-for="header in headers" v-slot:[`header.${header.value}`]=" ;{ headers }"> {{ header.text }} <span v-if="header.text=='SomeText'"><img :src="require('@/assets/image_1.png')" /></span> ; <span v-if="header.text=='SomeOtherText'"><img :src="require('@/assets/image_2.png')" /></span> ; </template> </code></pre> <p>錯誤訊息如下:</p> <pre class="brush:php;toolbar:false;">14:3 error Elements in iteration expect to have 'v-bind:key' directives vue/require-v-for-key</pre> <p>如果有人能提供建議,我會很高興。 </p>
P粉550257856P粉550257856392 天前473

全部回覆(1)我來回復

  • P粉127901279

    P粉1279012792023-08-28 00:16:35

    嘗試根據目前標題的索引鍵入巢狀元素:

    <template v-for="(header,i) in headers" v-slot:[`header.${header.value}`]="{ headers }">
        <span :key="'text'+i"> {{ header.text }}</span>
        <span :key="'img1'+i" v-if="header.text=='SomeText'"><img :src="require('@/assets/image_1.png')" /></span>
        <span :key="'img2'+i" v-if="header.text=='SomeOtherText'"><img :src="require('@/assets/image_2.png')" /></span>
    </template>

    回覆
    0
  • 取消回覆