Javascript 从angularJS中的内部回调更新$scope
我有这个控制器,我想从函数回调中更新Javascript 从angularJS中的内部回调更新$scope,javascript,angularjs,scope,angularjs-scope,Javascript,Angularjs,Scope,Angularjs Scope,我有这个控制器,我想从函数回调中更新$scope.progress。我尝试使用$rootScope和$scope.apply()但无法使其工作。 有什么我遗漏的吗 progressupdate是事件返回的变量。 代码与此不完全相同。我在这里非常简单地展示了它的结构 app.controller('player', function($scope) { var show = function(url) { function(err, showOK) {
$scope.progress
。我尝试使用$rootScope
和$scope.apply()
但无法使其工作。
有什么我遗漏的吗
progressupdate是事件返回的变量。
代码与此不完全相同。我在这里非常简单地展示了它的结构
app.controller('player', function($scope) {
var show = function(url) {
function(err, showOK) {
if (err) {
console.log(err);
} else {
showOK.on('listening', function(){
$scope.progress = progressupdate;
});
}
});
}
show(url);
});
我是否在控制器内错误地运行该功能?
我应该用这样的东西吗
$scope.show = function(url)...etc
我在上面的脚本中没有看到
$apply
函数和progressupdate。在设置后尝试$apply
,或将其设置在$apply
内:
showOk.on('listening', function(){
$scope.$apply(function(){
$scope.progress = progressupdate;
});
});
或
建议使用第一种方法。您的示例在语法上不正确。不确定这是一个糟糕的复制/粘贴还是实际问题。哎呀,一些糟糕的复制面食。我想我已经筋疲力尽了,因为我以前试过你的建议,但没能让它工作!谢谢
showOk.on('listening', function(){
$scope.progress = progressupdate;
$scope.$apply();
});