在給定物件下方,我需要使用 javascript 將鍵“label”、“value”、“ward”和“tole”的值重置為空('')。
state ={
"label": "???????? ??????",
"value": 21,
"province": {
"label": "???????? ??????",
"value": "23"
},
"district": {
"label": "??????????",
"value": "20"
},
"local_level": {
"label": "??????????? ?????????",
"value": "17"
},
"ward": "10",
"tole": "venas"
}
我試圖獲取物件的鍵
Object.keys(state).map(item=>({key: item}))
但不知道如何重置物件的值。
uj5u.com熱心網友回復:
由于這些都是頂級屬性,您可以像這樣輕松地覆寫它們
let state = {"label":"???????? ??????","value":21,"province":{"label":"???????? ??????","value":"23"},"district":{"label":"??????????","value":"20"},"local_level":{"label":"??????????? ?????????","value":"17"},"ward":"10","tole":"venas"}
const template = {
label: " ",
value: " ",
ward: " ",
tole: " "
}
// reset to template
state = {
...state, // keep everything else
...template // override with the template
}
console.log("state", state)
由于這被標記為反應,一個示例用例將在狀態掛鉤設定器中
const [ state, setState ] = useState({ /* initial object */ })
setState(state => ({
...state,
...template
}))
uj5u.com熱心網友回復:
for...in您可以使用JS中的 Loop 來遍歷物件。然后,如果您找到這些鍵,則只需用空字串替換它們的值。
for(let key in state) {
if (key === 'label' || key === 'value' || key === 'ward' || key === 'tole') {
state[key] = ' ';
}
}
此代碼將起作用,并將所有這些值更改為空字串。
uj5u.com熱心網友回復:
let setToDefault = state => Object.assign(state, { label: '', value: '', ward: '', tole: '' });
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/425519.html
標籤:javascript 反应
下一篇:Axios正在回傳空字串值
