在过去的两周里,我玩了angularjs
,发现了很多有趣的事情,让我的生活变得轻松。在angularjs中编写控制器方法设计的最佳做法是什么?
接下来我想问一下关于controller
的设计。
比方说,我都遵循的代码片段:
var feederliteModule = angular.module('FeederLiteApp', []);
feederliteModule.controller('FeederLiteCntrl',
['ajax_post','delay', 'maps', '$scope', '$http', '$timeout', '$q',
function(ajax_post,delay, maps, $scope, $http, $timeout,$q) {
$scope.isPaused = function() {
return isPaused;
};
$scope.testGeo = function() {
if (isPaused) return;
...
};
$scope.resetGeo = function() {
....
};
....
}]);
feederliteModule.factory('delay', ...
...
feederliteModule.factory('maps', ...
...
feederliteModule.factory('ajax_post' ...
上面提到的例子显示了controller
有3种方法(名字我随机拿了)。对我来说,这看起来有些杂乱,因为这个方法定义的概念使我的代码难以阅读。
我只有2个控制器,但每个控制器都有复杂的逻辑,它影响搜索代码中的一些东西。
也许这样的事情:
$scope.isPaused = isPaused();
$scope.testGeo = testGeo();
$scope.resetGeo = resetGeo();
function isPaused() {
return isPaused;
}
function testGeo() {
if (isPaused) return;
...
}
function resetGeo() {
....
}
....
我错过了在angularjs的东西吗?
有人知道更好的技术来写方法吗?
谢谢
马克西姆
你的功能分配范围在最后一个例子也立即执行这些功能。 ()不应该在它们的末尾。 – 2013-05-12 15:21:37