일반 객체, 배열에 ref 사용시 질문드립니다.
186
작성한 질문수 2
reactive({}), reactive([])가 아닌
일반 객체와 배열에 ref 타입 속성을 사용하더라도
reactive 객체에 담아서 사용할 때와 .value unwrapping 여부 외에는 동일하게 동작하는 것 같은데 맞게 이해한걸까요??
ref를 쓸 떄 반드시 reactive와 함께 써야하는지 궁금합니다(코드 상 편의를 제외한 이유)
export default {
setup() {
// ################일반 객체에 ref#######################
// ref => {}
const count2 = ref(0);
const state2 = {
count2,
};
count2.value += 1;
count2.value += 1;
count2.value += 1;
// console.log(count2);
// console.log(state2.count2.value);
// console.log(state2.count2);
// ################Reactive 객체에 ref#######################
// ref => Object
const count = ref(0);
const state = reactive({
count,
});
count.value += 1;
count.value += 1;
count.value += 1;
// console.log(count);
// console.log(state.count.value); // undefined, 객체 안에 ref가 들어갈 경우 .value를 자동으로 까서 반환해준다.
// console.log(state.count);
// ################일반 배열에 ref#######################'
// ref => array
const message2 = ref('Hello');
const arr2 = [message2];
console.log(arr2[0]);
console.log(arr2[0].value);
// ################Reactive 배열에 ref#######################'
// ref => array
const message = ref('Hello');
const arr = reactive([message]);
console.log(arr[0]);
console.log(arr[0].value);
const incrementCount = () => {
count.value += 1;
count2.value += 1;
console.log(count, state.count.value);
console.log(count2, state2.count2.value);
};
const changeText = () => {
message.value += '!';
message2.value += '!';
console.log(arr);
console.log(arr2);
};
return {
incrementCount,
changeText,
state,
state2,
count,
count2,
};
},
};
답변 1
0
안녕하세요
제가 질문을 100% 이해할 수 없어서요.
우선
질문) ref를 쓸 때 반드시 reactive와 함께 써야하는지 궁금합니다
답변) 반드시 그렇지 않습니다. 저의 경우에는 함께 쓰는일은 거의 없어요
npm init vue@3.1.9
0
41
2
크롭 웹스토어 vue devtools 설치 관련
0
42
1
snippets 작성하는 부분 설명이 있었나요?
0
49
2
computed 의 set 함수를 통해 const 변수에 값을 담는 부분
0
53
2
소스 공유 어디서 해야하는지 궁금합니다
0
61
2
component 등록과 사용
0
58
2
강의교안
0
56
2
eslint 룰 관련 질문이 있습니다.
0
64
2
npm init -y 명령어 실행에 관한 질문
0
155
2
volar 가 마켓플레이스에 검색되지 않아 vue(official)을 설치했습니다.
0
168
2
깊은 감시자 질문
0
88
2
정리된 내용
0
155
2
화면이 왜 이렇게 뜨는걸까요?
0
186
2
왜 다르게 뜰까요..?ㅠㅠ
0
155
2
npm init vue , npm create vue@latest 명령 오류
0
294
2
강의를 듣다보니 궁금한 점 질문드립니다.
0
141
2
watch강의 질문
0
153
1
강의 듣다가 질문드립니다.
0
120
1
이벤트 처리 부분 강의 실습
0
141
2
v-pre는 설명이 없나요?
0
154
2
AppCard.vue 만들다 말고 오류가 갑자기 엄청 뜹니다
0
146
1
개발자도구 Vue 탭 관련 문의
0
240
2
강의를 인텔리제이로 수업따라가도 되져?
0
178
2
API 사용시 자동으로 import하는 기능은 어떤것을 설치해야 하나요?
3
280
2





