我有一个基类,我想在服务中扩展它以帮助将数据放入角度范围。我在网上搜索了解决方案,但没有找到我喜欢的解决方案。我有一个用于访问设备文件系统的基类
类结构:
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 等)中扩展这个类,其中每个服务都可以使用存储库来存储各种不同的数据类型。我正在寻找最好,最合适的方式来做到这一点。在 vanilla JavaScript 中,人们只会做这样的事情:
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;
}]);
如果这些方法是正确的,或者是否有另一种更适合我想要完成的方法,我想要一些建议。我也希望或者宁愿需要在大部分代码中使用 Promise,因为它是异步的。