최근 최신 프론트엔드 프레임워크인 vue.js를 쓰면서 한가지 문제가 생겼다.
바로 변수를 통해 컴포넌트 상태를 업데이트 하려고 했는데,
해당 변수가 배열이 되었을경우 아무리 값을 변경해 보아도 적용이 안 된다는 문제였다.
찾아보니 vue에서는 아직 배열 감지를 하지 못하여 따로 함수를 써줘야 함을 알게 되었다.
함수 이름은 아래와 같다.
Vue.set(state.object, key, value)
해당 함수에 대한 자세한 설명은 아래의 링크를 참고 바란다.
https://vuejs.org/v2/guide/reactivity.html#Change-Detection-Caveats
그리고 이것을 vue cli의 컴포넌트에 쓰려면 아래와 같이 쓰면 된다.
(참고로 배열은 key 대신에 index를 넣으면 된다.)
this.$set(this.items, index, val)
관련링크는 아래 참고한다.
https://stackoverflow.com/questions/42807888/vuejs-and-vue-set-update-array
'Javascript > Vue.js' 카테고리의 다른 글
vue froala 라이브러리 (0) | 2018.09.28 |
---|---|
vuex를 form에 사용하기 (0) | 2018.09.20 |
vue 부모 컴포넌트와 자식 컴포넌트의 변수값을 동기화 하는법 (0) | 2018.09.10 |
firebase hosting을 이용한 vue web app 배포 (0) | 2018.08.30 |
vue에서 firebase 사용시 자동생성되는 id 값을 통해 데이터를 불러올때 (0) | 2018.08.06 |
댓글