각도 범위로 데이터를 가져 오기 위해 서비스에서 확장하고자하는 기본 클래스가 있습니다. 나는 그물 주위에 해결책을 찾았지만, 내가 좋아하는 것을 찾지 못했습니다.각도 서비스에서 기본 클래스 확장하기
var cOfflineStorageBase = Class.extend({
init: function(){
},
CreateFolderDir: function(){
},
DeleteAll: function(){
},
DeleteDirectories: function(){
},
DeleteItem: function(){
},
GetFiles: function(){
},
FileExists: function(){
},
GetPath: function(){
},
GetObject: function(){
},
SaveObject: function(){
},
});
내가 여러 가지 각도 서비스에서이 클래스를 확장 할 수 있도록하고 싶습니다 (즉 offlineCart, offlineCustomLists : 나는 장치 클래스 구조
의 파일 시스템에 액세스하는 데 사용되는 기본 클래스를 , 요법 ...) 여기서 각 서비스는 다양한 데이터 유형을 저장하기 위해 스토리지 기반을 사용할 수 있습니다. 나는 각도에서 이것을하는 최선의 가장 적절한 방법을 찾고있다. 바닐라 자바 스크립트에서 다음 중 하나를 수행하면됩니다.var newClass = cOfflineStorageBase.extend({
//add new stuff here
});
하지만 같은 방식으로 각도를 사용하고 싶습니다.
내가 고려 된 접근 방식은 angular.extend 기능을 사용할 수 있습니다,하지만 난이 적절한 경우, 또는이 같은 것이 더 적절한 방법이 될 것입니다 확실하지 않다 : 나는 몇 가지 조언을하고자
app.factory('someChild', ['$http' , 'cOfflineStorageBase',
function($http, cOfflineStorageBase){
var SomeClass = cOfflineStorageBase.extend({
init: function(){
this._super.init()
},
//Add more stuff here
});
return SomeClass;
}]);
만약 논문 접근법이 정확하거나 내가 성취하고자하는 목적을 위해 더 나은 접근법이 있다면. 나는 또한 비동기 적이기 때문에이 코드의 많은 부분에서 약속을 사용하기를 원한다.
(즉,'새로운 SomeClass()') 또는 각도 서비스 (예 :'angular.service ('someChild'를 사용하여 수행해야합니다, SomeClass)'). 물론, 당신이 원하는 것은 서비스 인스턴스가 아닌 함수 생성자를 반환하는 것이 었습니다. –