Angularjs 角度重复未更新样式
我的角度中继器有问题。这是我第一次真正尝试angular,我正在尝试为员工建立一个管理者拥有的复读器。当我更改每行的员工数以显示时,中继器会按预期工作,它会过滤列表并在每行显示正确的员工数。但是,有一个可以作为所有员工的水平连接线,其宽度不变Angularjs 角度重复未更新样式,angularjs,asp.net-mvc,Angularjs,Asp.net Mvc,我的角度中继器有问题。这是我第一次真正尝试angular,我正在尝试为员工建立一个管理者拥有的复读器。当我更改每行的员工数以显示时,中继器会按预期工作,它会过滤列表并在每行显示正确的员工数。但是,有一个可以作为所有员工的水平连接线,其宽度不变 <div ng-repeat-start="n in chart.renderRange(chart.data.employees.length,chart.employeeRenderBoxes)" class="horizontalCo
<div ng-repeat-start="n in chart.renderRange(chart.data.employees.length,chart.employeeRenderBoxes)"
class="horizontalConnector"
ng-style="{'width': {{ chart.calcEmployeesHorizontalRowWidth((chart.data.employees| paging:n-1:chart.employeeRenderBoxes).length) }} + 'px' }"></div>
<table ng-repeat-end class="employeeNav" cellspacing="0" cellpadding="0"></table>
我的控制器如下所示:
(function () {
'use strict';
angular
.module('app')
.controller('chartController', chartController);
chartController.$inject = ['$log', 'bootstrappedData'];
function chartController($log, bootstrappedData) {
/* jshint validthis: true */
var vm = this;
vm.employeeRenderBoxes = 4;
vm.employeeRenderRange = 0;
vm.data = bootstrappedData.chartData;
vm.renderRange = renderRange;
vm.calcEmployeesHorizontalRowWidth = calcEmployeesHorizontalRowWidth;
function renderRange(employeeCount, employeeRenderBoxes) {
var _range = [];
var numberOfSplits = Math.ceil(employeeCount / ((!!employeeRenderBoxes) ? employeeRenderBoxes : 1));
for (var i = 1; i <= numberOfSplits; i += 1) {
_range.push(i);
}
vm.employeeRenderRange = _range.length;
return _range;
}
function calcEmployeesHorizontalRowWidth(rangeCounter) {
return (rangeCounter - 1) * 130;
}
}
})();
(函数(){
"严格使用",;
有棱角的
.module('应用程序')
.控制器(“chartController”,chartController);
chartController.$inject=['$log','bootstrappedData'];
函数chartController($log,bootstrappedData){
/*这是真的*/
var vm=这个;
vm.employeeRenderBoxes=4;
vm.employeeRenderRange=0;
vm.data=bootstrappedData.chartData;
vm.renderRange=renderRange;
vm.calcEmployeesHorizontalRowWidth=calcEmployeesHorizontalRowWidth;
函数渲染(employeeCount、employeeRenderBoxes){
var_范围=[];
var numberOfSplits=Math.ceil(employeeCount/(!!employeeRenderBoxes)?employeeRenderBoxes:1));
for(vari=1;i从我的ngstyle中删除了{{}}
<div ng-repeat-start="n in chart.renderRange(chart.data.employees.length,chart.employeeRenderBoxes)"
class="horizontalConnector"
ng-style="{'width': chart.calcEmployeesHorizontalRowWidth((chart.data.employees| paging:n-1:chart.employeeRenderBoxes).length) + 'px' }"></div>
至少从ng样式中删除大括号,ng样式=“{'width':myExpression}”
检查这个简单的插入,谢谢@Fissio的帮助。
<div ng-repeat-start="n in chart.renderRange(chart.data.employees.length,chart.employeeRenderBoxes)"
class="horizontalConnector"
ng-style="{'width': chart.calcEmployeesHorizontalRowWidth((chart.data.employees| paging:n-1:chart.employeeRenderBoxes).length) + 'px' }"></div>