반응형
방법1. .sync를 사용하기
parent
<TextDebounceForm :value.sync="systemItem.id" />
child
<template>
<div class="form-cont">
<input v-model="val" />
</div>
</template>
<script lang="ts">
import { Component, Prop, Vue } from 'vue-property-decorator';
@Component
export default class InputGroup extends Vue {
@Prop({ default: '' }) value!: string;
get val() {
return this.value;
}
set val(newVal) {
this.$emit('update:value', newVal);
}
}
</script>
v-model 활용하기
parent
<InputGroup :v-model="systemItem.nm" />
child
<template>
<li>
<label for="" class="label point">{{ inputNm }}</label>
<div class="form-cont">
<input v-model="formValue"/>
<p v-if="validCheck !== ''" class="red-txt noti">{{ validCheck }}</p>
</div>
</li>
</template>
<script lang="ts">
import { Component, Prop, Vue } from 'vue-property-decorator';
@Component
export default class InputGroup extends Vue {
formValue = '';
@Watch('formValue')
onChanged(newVal: string) {
this.$emit('input', newVal);
}
}
</script>
반응형
'Dev > [Vue.js]' 카테고리의 다른 글
[Vue.js] vue 2.0 에서 LifeCycle에 대한 삽질 후기 (Error in mounted hook) (0) | 2022.05.15 |
---|---|
[vue.js] view에 바인딩 된 '배열' 변수를 업데이트 할 때, 감지 안되는 문제 (0) | 2022.05.12 |
[Vue.js] Vue Axios 적용해보기 (0) | 2021.02.15 |
[Vue.js] Vuex 를 적용해보기 (0) | 2021.02.15 |
[Vue.js] 버튼과 이벤트 연결하기 (0) | 2021.02.09 |