2021-07-19
970
#vue
Emmanuel John
58675
Jul 19, 2021 ⋅ 3 min read

Dependency injection in Vue: Advantages and caveats

Emmanuel John I'm a full-stack software developer, mentor, and writer. I am an open source enthusiast. In my spare time, I enjoy watching sci-fi movies and cheering for Arsenal FC.

Recent posts:

quote card aurora scharff react async

The next era of React has arrived: Here’s what you need to know

Aurora Scharff discusses React’s async coordination primitives, and how React’s new era signals a fundamental shift in how devs build software.

Aurora Scharff
Dec 3, 2025 ⋅ 10 min read
tanstack db query driven sync

Tanstack DB 0.5 Query-Driven Sync: Loading data will never be the same

Explore TanStack DB’s new feature, Query-Driven Sync, and how you can leverage it to build efficient, scalable React applications.

David Omotayo
Dec 2, 2025 ⋅ 11 min read

Error boundaries are broken – signals can fix them

Error boundaries catch only render-time failures, which isn’t enough for modern async UIs. Signals treat errors as reactive state, giving you consistent handling across your app.

Isaac Okoro
Dec 1, 2025 ⋅ 6 min read
How to speed up long lists with TanStack Virtual

How to speed up long lists with TanStack Virtual

Build fast, scalable UIs with TanStack Virtual: virtualize long lists, support dynamic row heights, and implement infinite scrolling with React.

Ikeh Akinyemi
Nov 28, 2025 ⋅ 8 min read
View all posts

6 Replies to "Dependency injection in Vue: Advantages and caveats"

  1. Why would you need to inject dependencies when you have Vuex? The prop drilling example is easily mitigated with state management.

    1. While Vuex can mitigate prop drilling, it is worth noting that it can be an overkill and added complexity for small to medium Vuejs applications.

  2. With dependency injection, DurryComponent would receive the wallet from RexComponent without passing through TomComponent and PeterComponent.

    Actually no. The dependency will traverse the entire descendant tree and will be available to any nested components. That’s the main problem with vue di. You can’t control the di process.

    1. Hi Predi, actually that illustration was a quick comparison between dependency injection and prop drilling. With DI we don’t have to pass the values manually like we do with props. I will provide some updates for more clarity. Thanks!

Leave a Reply

Would you be interested in joining LogRocket's developer community?

Join LogRocket’s Content Advisory Board. You’ll help inform the type of content we create and get access to exclusive meetups, social accreditation, and swag.

Sign up now