News for hackers. Stuff that matters.
Re:Designing very large JavaScript applications by allover on Saturday April 21, 2018 @08:08AM (#16891124)
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

Re:Designing very large JavaScript applications by Kiro on Saturday April 21, 2018 @02:12PM (#16892502)
Thanks a lot! Learned a bunch from this single comment. :)
Re:Designing very large JavaScript applications by allover on Saturday April 21, 2018 @02:16PM (#16892521)
No probs :)

DI is something I battled to understand for a while!