inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex

현재 앱 구조의 문제점 진단 및 개선된 앱 구조 소개

Vue에서 Dependency Injection이 없나요?

해결된 질문

476

개발하는쿼카

작성한 질문수 43

1

안녕하세요~!

프론트에 관심이 생겨서
재미있게 강의를 듣고 있는 백엔드 개발자 입니다.

 

강의를 듣다보니 js는 component를 작성할 때 클래스를 만드는 것보다는 함수를 만들어서 해결하는 것 같은데요.

 

컴포넌트 클래스를 생성하고 spring framework 처럼 IoC를 사용하여 각 컴포넌트간에 DI를 사용할 수는 없는 건가요?


감사합니다.

javascript vue.js es6 vuex

답변 2

1

캡틴판교

안녕하세요, 좋은 질문이네요. 자바스크립트에서 클래스도 함수입니다. 말씀하신 클래스 기반의 DI 패턴을 사용하시는 것보다 명시적인 함수 기반의 조합 또는 모듈, 유틸 함수의 조합으로 로직을 구성하시는 걸 추천드려요. 그래야 자바스크립트 언어를 더 잘 이해할 수 있습니다 :)

모듈, 유틸 함수 단위가 커지면 클래스로 조합하셔도 되구요. 다만, 처음부터 클래스로 접근하실 필요는 없습니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴이에요. Vue에서는 기본적으로 DI(Dependency Injection)을 제공하지는 않습니다. 대신에 props를 사용하여 부모 컴포넌트로부터 값을 전달받거나, Vuex를 통해 상태 관리를 할 수 있습니다. 또한, Vue의 provide/inject API를 이용하여 조금 유사한 기능을 구현하는 것도 가능합니다. 하지만, Vue에서는 일반적인 상황에서는 DI를 적용하는 것보다 좀 더 간단하고 직관적인 방법을 사용하는 것을 권장하고 있어요. 그렇기 때문에 DI를 명시적으로 지원하지는 않습니다. 추가로 질문이 있으시면 도움을 드릴게요. 감사합니다.

Chrome 개발자 모드 확장이 안됨

0

265

1

깃 권한 요청드립니다

0

118

1

vue.js 중급 리포지토리 권한 관련

0

118

1

vuex + axios 질문 있습니다!

1

198

2

깃 권한 요청드립니다!

0

161

1

강의 깃주소 문의

0

144

1

router-view에 props를 어떻게 넘길 수 있나요?

1

281

2

Vue가 인식되지 않는 현상

0

207

1

기초강좌는 어디있나요?

1

190

2

App.vue가 필요한 이유

0

193

1

getter가 정의되어 있지 않아 오류가 발생합니다.

1

254

1

뷰 라이프사이클

1

188

1

TSLint 말고 TSLint Vue 설치해도 되나요?

1

368

3

로컬 스토리지는 어디에 있나요?

1

281

1

vuex 실행시 새로고침해야지만 리스트에 나타나는 현상

1

389

2

export default 관련한 질문

0

354

2

깃허브 vue-todo 접근불가에 따른 확인요청

1

354

2

깃허브에 문제있는것 같습니다.

1

273

2

인프런 강의 재생 화면 구성 변경 문의드립니다

1

306

2

addTodo Helper 함수 적용

1

243

1

vuex 헬퍼 전역 설정

1

248

2

github 권한요청드립니다.

1

258

2

이벤트 위치에 대한 궁금증 입니다.

1

224

2

구조 차이에 대한 문의

1

345

2