반응형
VueJs한 참조 문제에 새로운 키를 첨가합니다.
개체에 동적으로 밭 관련된 수정한 새로운 키를 추가하는 것을 나는 문제가 있습니다
예를 들어 새로운 칼럼"url"에 열 이름 설정하면 url의 1값을 업데이트하려고 하면 됩니다.비록 필드 v-model="row[field.name]이 있는 제 예에서 가치는 업데이트되지 않는다.제가 때field.name변화row[field.name]가 바뀌도록 해야 하는 일이 있나.
코드:https://codepen.io/RuttyJ/pen/zdgbPB
<table>
<thead>
<tr>
<template v-for="(field, f) in fields">
<th>
<flex-row>
<flex-column style="width: 100%;">
<flex>
<input type="text" :value="field.name" @input="updateField(f, 'name', $event.target.value)" style="width:100%">
</flex>
<flex style="width: 100%;">
<select :value="field.type" @change="updateField(f, 'type', $event.target.value)"
style="width:100%">
<option v-for="fieldType in fieldTypeOpts"
:value="fieldType.value"
:selected="fieldType.value == field.type">{{fieldType.label}}</option>
</select>
</flex>
</flex-column>
<flex>
<button @click="removeField(f)"
style="height:100%;">X</button>
</flex>
</flex-row>
</th>
</template>
<td>
<button @click="newField()">+</button>
</td>
</tr>
</thead>
<tbody>
<tr v-for="(row, r) in rows">
<td v-for="field in fields">
<template>
<template v-if="'checkbox' == field.type">
<input type="checkbox"
style="float:right;"
v-model="row[field.name]"
>
</template>
<input type="number"
v-else-if="'number' == field.type"
style="width:100%"
:value="row[field.name]"
@input="updateRow(r, field.name, $event.target.value)">
<input type="text" style="width:100%"
v-else
v-model="row[field.name]">
{{field.name}}
<pre>{{field}}</pre>
<pre>{{row}}</pre>
</template>
</td>
<td><button @click="removeRow(r)">X</button></td>
</tr>
</tbody>
<tfoot>
<tr>
<td v-for="(field, i) in fields">
</td>
<td>
<button @click="newRow()">+</button>
</td>
</tr>
</tfoot>
</table>
참고로 나는 v-model과:value/ 입력@ 둘 다 노력했다.
당신은 반응도 어기고 있다.만약 여러분이 각 마운트는 선언되지 않은 속성 수정하는 당신은 반응도 끊어질 것이다.당신은 직접 뒤 뷰 그것을 추적하지는 않 수 있는 배열에 있는 개체를 수정하려고 노력하고 있다.이것 때문에, 난 우리 팀에 모든 개발자들이 사용할 것을 요구한다. 때마다 그들이 한 물체 에 속성을 수정하는달러다.
당신은 대체할 수 있습니다.
this.rows[rowid][fieldName] = value;
와 함께
this.$set(this.rows[rowid], fieldName, value)
참조URL:https://stackoverflow.com/questions/46164569/vuejs-adding-new-key-to-object-reference-issue
반응형
'Programing' 카테고리의 다른 글
JS 파일의 Nuxt 액세스 저장소(모듈 모드) (0) | 2022.05.17 |
---|---|
vuej에서 처리된 html 잘라내기 (0) | 2022.05.17 |
Java에서 날짜/시간 차이 계산 (0) | 2022.05.17 |
플로트와 더블을 인쇄 및 공동 구분하는 방법 (0) | 2022.05.17 |
API 서버에서 JSON Object 가져오기 vue-i18n을 사용한 Vue.js의 국제화 (0) | 2022.05.17 |