免责声明节省$范围,我是新来的angularjs :)angularjs通过关闭
我必须委托给一个服务,我尝试保持$范围,所以我可以后scope.apply控制器设置属性:
var Build = function($scope, $http, mango) {
var scope = $scope;
$scope.BuildManagerSubmit = function(selectedProfile) {
mango.buildMango(selectedProfile.def, function(profiledef) {
// bunch of property assignments on selectedProfile ...
scope.$apply();
}, scope);
};
};
controllers.controller('Build', ['$scope', '$http', 'mango', Build]);
注意,我使用的封闭件来保存的范围和在将其传递给该服务(为简洁起见省略)。该服务将我称为cb.call(context,...),以便保持对scope的访问。这一切都很好,但我更关心是否有更好的习惯用法。在委托给像这样的服务时,我没有看到很多维护$ scope的例子。
编辑:这个应用程序是使用节点的WebKit和“芒果”的服务基本与文件系统交互调出shell脚本等
什么是doind mango.buildMango?有角度服务来自动处理超时或XMLHttpRequest,所以你不必做那种东西 – Guillaume86 2013-04-26 16:23:09
应用程序使用node-webkit和芒果服务与文件系统交互 – user2276815 2013-04-26 16:54:35
好吧,我会注入$ rootScope在芒果服务并从那里调用$ rootScope。$ apply()。之后,当您在其他地方使用芒果服务时,您不必再担心。 – Guillaume86 2013-04-26 16:59:57