我已经定义了一个控制器,并将其应用于 2 个差异很小的视图。
角代码:
app.controller('MyCtrl', function($scope) {
$scope.canSave = false;
$scope.demo = {
files : [{
filename: 'aaa.html',
source: '<div>aaa</div>'
}, {
filename: 'bbb.html',
source: '<div>bbb</div>'
}]
}
$scope.newFile = function(file) {
$scope.demo.files.push(file);
}
$scope.$watch("demo.files", function(val) {
$scope.canSave = true;
}, true);
});
视图 1:
<div ng-controller="MyCtrl"></div>
视图 2:
<div ng-controller="MyCtrl"></div>
示例代码很简单,但是在我的实际项目中代码和逻辑很多。
View 1 和 View 2 具有几乎相同的功能,只有一些差异,但我确实需要在控制器中为它们中的每一个编写一些代码。
我不想为它们创建 2 个不同的控制器,因为它们具有大部分相同的逻辑。我不想将逻辑移动到服务中以在 2 个控制器之间共享它,因为作为服务的逻辑并不常见。
还有其他方法吗?