當我在過去的幾周裏嘗試學習一些Angular時,我採用了特定的應用程序體系結構。關於AngularJS中基於對象的應用程序結構的批判性看法
假設一箇中間大的SPA,我創建視圖和應用maincontroller:
<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();
}
}
}
});
然後,我會在我的maincontroller創建類的實例,存儲所有必要的數據從觀點到該對象,通過調用類的方法處理它。
如果應用程序需要其他功能,例如選擇一些東西的對話框,我會重複上述步驟併爲該對話框創建一個類。
現在,雖然我很樂意以這種方式做事,但我仍然懷疑是否有人會考慮這種不好的做法,如果是這樣,爲什麼會這樣,我能做些什麼更好?