我想在 v-for 回圈中為我的輸入欄位生成隨機 ID:
<div v-for="(data) in form" :key="data.attribute">
<input type="date" :min="today" :id="_ uuid()" :name="data.attribute" :placeholder="data.default_value" :readonly="data.render_type == 'readonly'" v-model="data.value" @input.prevent="updateOuter($event, data.refresh, 'due_date')"...
使用 uuid:
const uuid = () =>{
return v4();
};
現在更改輸入值時,每次uuid()呼叫原因時 ID 都會更改。如何使用 uuid 為輸入欄位生成固定 ID?表單資料物件不提供我可以使用的唯一屬性,因為元素可能會在頁面上多次出現。
uj5u.com熱心網友回復:
我認為,您應該像ids在 data 中一樣創建其他物件并在那里生成 uuid,如下所示;
<div v-for="(data) in form" :key="data.attribute">
<input type="date" :min="today" :id="ids[data.attribute]" :name="data.attribute" />
</div>
{
data(){
const ids = form.reduce((res, item) => {
res[item.attribute]= v4();
return res;
}, {});
return {
ids,
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/332654.html
標籤:javascript Vue.js
