AngularJS에서 설정 파일을 설정하고 있습니다. AnglesJS에서 키를 덮어 쓸 수없는 팩토리를 만들 수 있습니까? 예를 들어, 이렇게 상수를 설정할 수 있습니다. 덮어 쓸 수 없습니다.AngularJS "Constant"Factory
module.constant ('animals', { "cat": "meow", "dog": "woof"});
하지만 덮어 값 가능하지만 공장 자체
module.value('catSound','meow')
.value('dogSound','woof')
.factory('animals', ['catSound','dogSound', function(catSound, dogSound) {
return {
"cat": catSound,
"dog": dogSound
}
});
위 공장 module.factory('animals',function(){ return 7 })
을하는 코드의 또 다른 조각을 허용 덮어 쓸 수 같은 것을 할 싶습니다 모든 것을 망가뜨려 라. 그러나 공장에서 개별 값 은 (덮어 쓰기 가능) 일 수 있으므로 module.value('catSound','hiss')
을 할당하고 예상대로 작동해야합니다.
나는 상수에 주입하려고 시도했지만 가능한 한 이해할 수 없었습니다. 내 공장 신고서를 덮어 쓰지 않도록하려면 어떻게해야합니까? 나는 상수 인이 내가 원하는 것을 설명 할 때 아마도 정확한 용어가 아니지만, 공장의 함수 정의을 일정하게하고 싶습니다.
유스 케이스에 대해 약간의 통찰력을 제공 할 수 있습니까? 공장을 덮어 쓰면 테스트에 대한 조롱과 같은 큰 이점이 있습니다. –
필자는 기본적으로 복사 할 수 있고 매개 변수가 개별 서버의 요구에 맞게 수정 된 기본 구성 파일을 설정하려고합니다. 즉, 기본적으로 개발 API를 가리키는 API URL이 필요하지만 프로덕션 서버는 프로덕션 API를 가리 키기를 원할 것입니다.) 아이디어는 하나의 파일에 _all_ 구성 값을 유지하여 개발자가 로컬 구성에서 실수로 출고시의 출력을 변경하는 것을 방지하면서 기본값을 간단하게 업데이트하도록했습니다. 'value()'는 개별 변경을 허용합니다. 더 좋은 방법이 있다고 확신합니다. –
문제에 대한 해결책을 찾았습니까? 나는 지금도 같은 문제를 다루고있다. –