How to use two AngularJS services with same name from different modules?

后端 未结 2 985
半阙折子戏
半阙折子戏 2021-02-02 09:02

Supposed I have two modules for AngularJS, e.g. foo and bar, and both of them define a service called baz.

In my application I dep

2条回答
  •  青春惊慌失措
    2021-02-02 09:43

    The service locator looks services up by name (angularjs guide DI). However "Namespacing" services in AngularJS:

    As of today AngularJS doesn't handle namespace collisions for services so if you've got 2 different modules with the service named the same way and you include both modules in your app, only one service will be available.

    I guess you can make the fully qualified name "by hand": name the service foo.baz and bar.baz instead of plain baz. It's kind of a self-delusion. Moreover, writing it this way doesn't make namespacing real, but another person that reads the code might think so.

提交回复
热议问题