programing

Angular에서의 "네임스페이스" 서비스JS

bestcode 2023. 2. 14. 20:23
반응형

Angular에서의 "네임스페이스" 서비스JS

Angular의 구조JS는 서비스 이름 간의 충돌을 처리합니까?예를 들어 각각 'foo'라는 서비스를 포함하는 두 개의 모듈을 선언한 경우입니다.재사용 가능한 모듈을 만들거나 다른 서드파티 모듈과의 충돌을 피하고 싶을 때 서비스를 "네임스페이스"하는 좋은 방법은 무엇입니까?

현재 AngularJS는 서비스에 대한 네임스페이스 충돌을 처리하지 않으므로 이름이 같은 서비스를 사용하는 두 개의 모듈이 있고 앱에 두 모듈을 모두 포함하면 하나의 서비스만 사용할 수 있습니다.

현시점에서는 서비스 이름에 커스텀프리픽스를 붙이는 것이 가장 좋습니다.다음은 예를 제시하겠습니다.

angular.module('myprefix_mymodule',['dep1', 'dep2']).factory('myprefix_MyService', ...)

Pkozlowski가 지적했듯이, 그들은 그렇지 않다.모든 서비스에 수동으로 프리픽스를 추가할 수 있습니다(약간 귀찮은 일이지만). 그렇지 않으면 이름 공간을 만들기 위해 해킹을 작성했습니다.https://github.com/callmehiphop/angular-namespacer

언급URL : https://stackoverflow.com/questions/14909474/namespacing-services-in-angularjs

반응형