Ng-style& #39;s变量不更新到视图
ng-style's variable not updating to the view
我想在每次成功完成请求时向加载器栏添加20像素。来自不同api的交错数据集。在每个成功的请求上,我想在var progress
中添加20,不幸的是,即使数字在增加,$scope.progressWidth
也不会更新视图。它在width: 0px
处保持静态。当我尝试$scope.apply()时,它说文摘已经发生了。
<div class="loader" ng-style="progressWidth"></div>
js:
var progress = 0;
$scope.progressWidth = {
'width': progress + 'px'
};
angular.forEach(['load::1', 'load::2', 'load::3', 'load::video'], function (value) {
$scope.$on(value, function (event) {
load = true;
loaded.push(true);
if (load === true ) {
load = false;
progress += 20;
}
if (loaded[0] === true && loaded[1] === true && loaded[2] == true && loaded[3]) {
$scope.$broadcast('load::menu');
}
});
});
数据:
$http.jsonp('http://filltext.com/?rows=10&delay=1&fname={firstName}&callback=JSON_CALLBACK').
success(function(data){
$scope.datas[0] = data;
console.log($scope.datas);
$scope.$emit('load::1');
});
$http.jsonp('http://filltext.com/?rows=10&delay=2&fname={firstName}&callback=JSON_CALLBACK').
success(function(data){
$scope.datas[1] = data;
console.log($scope.datas);
$scope.$emit('load::2');
});
$http.jsonp('http://filltext.com/?rows=10&delay=4&fname={firstName}&callback=JSON_CALLBACK').
success(function(data){
$scope.datas[2] = data;
console.log($scope.datas);
$scope.$emit('load::3');
});
尝试在progress变量上添加一个手表并从它更新progressWidth:
$scope.$watch('progress', function(value) {
$scope.progressWidth = { 'width': value+ 'px' };
});
同时,确保progress也在作用域中,并且总是调用$scope.progress.
相关文章:
- 在控制器之间切换,可以't更新视图
- 拖动&删除Fullcalendar.io资源-更新视图
- 由控制器调用的服务更改时,Angular未更新视图
- 如何在Knockout.js中选中复选框时更新视图模型及其依赖项
- 当视图在AngularJS中返回时,我如何获得异步服务调用来更新视图
- 角度:当输入更改时更新视图 + .this/$scope
- 数据库中的数据更改时更新视图
- ng单击需要两次才能更新视图
- 范围变量更新,但不更新视图
- 在jquery中更新视图模型
- 在Meteor.js中通过同一路线内的锚点标签更新视图
- 更新视图和控制器之间的角度重复数据值的最佳方式是什么
- AngularJS 服务不会更新视图
- AngularJS 模式单例在服务中未更新视图
- 角度 JS 脚本未更新视图
- AngularJS 在$rootScope更改时更新视图
- 如果外部应用程序更改了持久模型(服务器数据库),AngularJS 是否可以自动更新视图
- AngularJS$scope更改不更新视图
- 如何在不使用映射的情况下更新视图模型
- 用于引导程序选择的挖空自定义绑定,不更新视图模型“选定类别/选定类别”