从事件回调内部更改绑定的角变量
Change bound angular variable from inside event callback
我试图改变输入字段的值时,视频加载。以下是相关代码:
如此:
$scope.stopRecording = function () {
// value of the input changes as expected
$scope.videoEndPos = 10;
};
这并不
$scope.stopRecording = function () {
video.onloadedmetadata = function() {
$scope.videoEndPos = 10;
// the value of the input does not change, but this still correctly outputs 10
console.log($scope.videoEndPos);
};
};
为了保持简短,我在那里留下了一些关键的视频内容,但那部分正在工作,并且onloaded元数据正在正常发射,所以它的角度和输入有些奇怪。但是,如果您怀疑我遗漏了一些相关代码,请告诉我。
video.stopRecording
发生在Angular宇宙之外,所以它不知道这个变化。您需要使用的是$scope。$apply,它允许你从Angular外部执行对作用域的更改。
$scope.stopRecording = function () {
video.onloadedmetadata = function() {
$scope.$apply(function(){
$scope.videoEndPos = 10;
});
// the value of the input does not change, but this still correctly outputs 10
console.log($scope.videoEndPos);
};
};
video.onloadedmetadata
可能是一个异步调用,直到摘要循环之后才返回。改成这样:
$scope.stopRecording = function () {
video.onloadedmetadata = function() {
$scope.$apply(function() {
$scope.videoEndPos = 10;
});
};
};
相关文章:
- 用独立变量敲除foreach绑定
- 如果快速切换,ng类在绑定变量上不能很好地工作,这可能吗
- AngularJS$作用域包括我的绑定变量,但以后仍然无法访问,为什么
- AngularJS是交叉绑定变量
- Angular2:如何在输入元素上动态设置数据绑定变量
- 在 AngularJS 中使用绑定变量调用控制器方法
- AngularJS绑定变量超出范围并通知更新
- 如何在jquery ajax模板中添加两个不同的绑定变量(如${amount}和${tax})的值
- Oracle Node js - Javascript - SQL 语句中的 IN 子句绑定变量
- Javascript 如何绑定变量
- Angularjs中绑定变量的字符串
- 将字符串组合到Ember.js中的绑定变量中
- 如何在 ng-repeat (Angular JS) 的过滤器中使用数据绑定变量
- 当绑定变量改变时,Angularjs选择不更新
- Angularjs为HTML标签属性分配绑定变量
- 引导进度条样式的宽度在angular js绑定变量中不起作用
- 与Jquery对象绑定变量的问题
- 无法将变量/ng-model绑定变量作为参数传递给$scope工厂函数
- 以指令为内容的Angular JS绑定变量
- 调试:获取函数内部绑定变量的内容