인프런 커뮤니티 질문&답변

정민신님의 프로필 이미지
정민신

작성한 질문수

프로젝트로 배우는 Vue.js 3

29 To-Do 데이터 db에서 가져오기

ref 와 reactive

작성

·

455

0

안녕하세요 강사님!

강사님께서 todos를 ref로 선언하고 사용하셨습니다.

오브젝트나 리스트는 reactive를 사용해보고싶어 DB데이터 맵핑 전까지는 모든 todos뒤에 value를 붙이지 않고 진행했습니다. axios 의 get으로 데이터를 가지고오니

'''

todos = res.data;

'''

에서 데이터를 가지고오긴 하는데 값이 화면에 표시되지 않습니다.

ref일 경우

'''

const todos = ref([])

...

todos.value = res.data

'''

reactive일 경우

'''

const todos = reactive([])

...

todos = res.data

'''

이렇게 이해했는데 값의 표시가 안되는 이유가 무엇일까요?

답변 2

0

정민신님의 프로필 이미지
정민신
질문자

감사합니다 선생님!!

그러면 reactive를 사용하지 않고 ref만 사용하여 충분히 프로젝트를 진행할 수 있을까요?!!

0

코지 코더님의 프로필 이미지
코지 코더
지식공유자

reactive([])를 사용하면 reference에 리액티비티가 연결이 되는데 새로운 reference를 가진 배열로 덮어쓰기를 했기 때문에 연결이 끊어지게 됩니다. 이런 이유 때문에 저는 ref를 사용을 했습니다.

 

https://vuejs.org/guide/essentials/reactivity-fundamentals.html#limitations-of-reactive

이 링크에 들어가시면 reactive의 한계에 대해서 설명을 해주고 있습니다 ^^

정민신님의 프로필 이미지
정민신
질문자

감사합니다 선생님!!

그러면 reactive를 사용하지 않고 ref만 사용하여 충분히 다른 프로젝트를 진행할 수 있을까요?!!

코지 코더님의 프로필 이미지
코지 코더
지식공유자

네 ref만 사용하셔도 됩니다 ㅎ 저도 이 강좌에서 ref만 사용을 했습니다

정민신님의 프로필 이미지
정민신

작성한 질문수

질문하기