当我在过去几周尝试学习一些 Angular 时,我采用了某种应用程序架构。
假设一个中型大型 SPA,我创建视图并应用主控制器:
<html ng-app="app">
<body ng-controller="appCtrl">
<!-- All of the view goes in here -->
</body>
</html>
现在我考虑我的应用程序必须做的事情。假设这个必须存储一些数据并使用它,我将创建一个提供程序来构建一个“类”。
var data = angular.module('data', []);
data.provider('$dataObject',function(){
this.$get = function($http){
function DataObject(){
var field = "testvalue";
var object = {
// ...
}
}
DataObject.prototype.processData = function(){
// do something
};
return {
Shipment: function(){
return new Shipment();
}
}
}
});
然后,我将在我的主控制器中创建该类的一个实例,将视图中的所有必要数据存储到该对象中,并通过调用类方法对其进行处理。
如果应用程序需要其他功能,例如选择一些内容的对话框,我将重复上述步骤并为该对话框创建一个类。
现在,虽然我以这种方式做事很自在,但我仍然想知道是否有人会考虑这种不好的做法,如果是这样,为什么会这样,我能做些什么更好?