data 객체 안 객체에서 this 사용하기
1133
작성한 질문수 39
vue-cli에서 data에 이중객체 구조로 만들 때 this가 통하지 않는데 이럴땐 어떻게 해야하나요?
아래의 그림은 data의 chartData 객체에서 label 값으로 computed의 tagNames를 사용하려고 한 부분인데요, chartData가 이미 객체라서 그런지 this를 하면 뷰 인스턴스를 가리키지 않는 것 같습니다. 그래서 tagNames도 사용이 안되구요.
답변 5
1
위와 같이 중개 코드 넣지 않고도 좀 더 깔끔하게 접근할 수 있을 것 같은데 전체적으로 어떻게 코드를 작성하신건지 보기가 어려워서 질의 게시판에서 답변 드리기에는 한계가 있을 것 같아요 :) 나중에 요거 신청해서 코드 들고 오시겠어요? :)
1
넵, bind가 바뀌었다는거 이해했습니다. 그렇다면 실질적으로 data에서 어떤 방식으로 적어야지 뷰 인스턴스의 computed 요소들을 참조할 수 있을까요? 그동안 조금 고민해봤는데 아래처럼 created 때 직접 프로퍼티에 접근해서 바꾸는 방법 밖에 떠오르지 않더라구요. 혹시 직접적으로 data 안에서 명시할 수 있는 방법은 없나요?
0
지나가다가 저도 궁금해져서 답글 남겨봅니다. 첫번째 이미지에 해당하는 코드에서 backgroundColor: Object.bind(this, vm) 이런 식으로 vm을 명시적으로 바인딩 하면 어떨까요?
0
안녕하세요 대현님, 좋은 질문이네요 :) 이건 데이터가 이중 객체 구조라 this가 접근 안되는게 아니라 차트 내부에서 this 바인딩이 바뀌어서 그런 것 같아요 :) new Chart() 하시고 나면 해당 차트 옵션 내부의 속성에서는 `this`가 모두 차트 라이브러리 모듈을 가리킬거에요 :)
아래 글 2개 보시면 무슨 말인지 더 이해하시기 수월할 것 같습니다! :)
개발자 툴에서 Vue가 표시되지 않는 현상.
0
91
2
chrome 확장 devtools 버전 문제
0
81
1
Vue.js not detected가 자꾸 뜹니다
0
81
2
마지막 강의가 안되요
0
55
1
data, computed, watch > Reactivity
0
48
1
f12누르고 개발자도구에 vue 탭이 안생겨요
0
88
1
vue composition api
0
72
1
강의 자료 다운이 될까요?
0
127
1
개발자 도구에서 뷰탭이 안보여요....
0
580
3
프롭스 데이터 질문입니다.
0
111
1
component.html:11 Uncaught ReferenceError: Vue is not defined at component.html:11:20 (anonymous) @ component.html:11
0
139
1
화면이 안떠요,, 이전 이후 강의는 뜨는데..
0
235
6
크롬 확장 프로그램 vue devtools 설치했는데
0
525
2
코드를 수정하고 브라우저의 Vue로 넘어가면 다운이 됩니다.
0
241
1
버튼을 클릭해도 event가 발생하지 않습니다.
0
309
1
vue3 css 경로 표시 문의
1
229
2
개발자도구 vue탭
0
354
1
화면 코드 보기
1
223
2
App.vue 내용 변경했는데 창이 연결할수없대요ㅜㅜ
1
381
2
html/css/js로 작성된 코드를 vue.js로 일부 전환하고자 이 강의를 듣기 시작했습니다.
1
884
2
{{ num }} 이 <app-content> 아래에 들어가 있을때에는 노출이 안됩니다...
1
287
2
뷰 개발자도구 이벤트 타임라인 어느 부분에서 확인가능한건가요
1
399
2
다음 단계 강의는...?
1
385
2
버튼을 눌러도 data의 값이 변경되지 않습니다
1
275
2





