Hacker News new | past | comments | ask | show | jobs | submit login

Yes, that is DI too, you can think of it something like 'injecting a shared singleton service', and yes the passing into a constructor is the basic approach you might call 'manual DI'.

And yep modules can let you avoid the need for that, you can share singletons by exporting an instance from a module, and then if you import that module from 2 other modules, both will get the same instance [1].

Though tbh that still feels a bit gross to me :) There are other solutions (like the context API [2] in React for passing some data/instance to multiple components at different levels in your 'component tree').

[1] https://k94n.com/es6-modules-single-instance-pattern [2] https://reactjs.org/docs/context.html




Thanks a lot! Learned a bunch from this single comment. :)


No probs :)

DI is something I battled to understand for a while!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: