inflearn logo
강의

講義

知識共有

Vue3完全マスター:基礎から実践まで - 「基本編」

テンプレート参照

this.$refs에 값이 들어가는 시점이 언제인가요?

830

jjkim0222

投稿した質問数 25

0

vue 버전은 3.0.0입니다

<template>

주문상태.png

** orderStatusCategory는 객체를 담은 배열 형태로

[{code_value: CANCEL, code_text: 주문취소}, {code_value: REQUEST, code_text: 주문요청}...]

형태입니다. 그리고 orderStatusCategory는 api를 통해 비동기적으로 받아오고요

그래서 저는 orderStatusCategory에 값이 할당되면 this.$refs에도 값이 들어 있을 거라고 생각했는데 아무 값도 안 들어있습니다

mounted랑 메서드

getProductOrderStatusCategory.png

제목 없음.png

위 코드에서 this.orderStatusCategory에 값이 들어왔는데도 불구하고 this.$refs에는 여전히 아무 값도 안 들어있습니다

pressedOrderStatusButton.png근데 버튼을 클릭하면 그 때는 this.$refs에 정상적으로 DOM 요소들이 들어있습니다.

질문 1) 왜 이런 건가요? 정확히 언제 this.$refs에 값이 들어가는 거죠?

질문 2) v-for로 버튼을 만들었는데 이렇게 만든 버튼들마다 다른 CSS를 주고 싶을 때는 ref로 접근하는 게 최선이죠?(v-for 하는 배열은 고정된 게 아니고 api로 받아올 때마다 바뀝니다)

vue.js vuejs

回答 1

1

gymcoding

안녕하세요.

두번 째 Callback 함수에서는 정상적으로 출력 되었다면,

첫번 째 (출력 안된곳) Callback 함수에서 this.$nextTick를 활용하여 DOM이 업데이트된 이후에 출력해 보시겠어요?

this.$nextTick(() => {
  console.log(this.$refs);
});
// 또는
await this.$nextTick();
console.log(this.$refs);

 

npm init vue@3.1.9

0

37

2

크롭 웹스토어 vue devtools 설치 관련

0

39

1

snippets 작성하는 부분 설명이 있었나요?

0

47

2

computed 의 set 함수를 통해 const 변수에 값을 담는 부분

0

52

2

소스 공유 어디서 해야하는지 궁금합니다

0

60

2

component 등록과 사용

0

57

2

강의교안

0

56

2

eslint 룰 관련 질문이 있습니다.

0

64

2

npm init -y 명령어 실행에 관한 질문

0

153

2

volar 가 마켓플레이스에 검색되지 않아 vue(official)을 설치했습니다.

0

167

2

깊은 감시자 질문

0

88

2

정리된 내용

0

153

2

화면이 왜 이렇게 뜨는걸까요?

0

184

2

왜 다르게 뜰까요..?ㅠㅠ

0

155

2

npm init vue , npm create vue@latest 명령 오류

0

289

2

강의를 듣다보니 궁금한 점 질문드립니다.

0

141

2

watch강의 질문

0

153

1

강의 듣다가 질문드립니다.

0

119

1

이벤트 처리 부분 강의 실습

0

140

2

v-pre는 설명이 없나요?

0

152

2

AppCard.vue 만들다 말고 오류가 갑자기 엄청 뜹니다

0

146

1

개발자도구 Vue 탭 관련 문의

0

240

2

강의를 인텔리제이로 수업따라가도 되져?

0

177

2

API 사용시 자동으로 import하는 기능은 어떤것을 설치해야 하나요?

3

276

2