这可能是一个愚蠢的问题,但我在这篇文章上停留太久了,一双新眼睛可能会看到这个问题。
我有两个数组,一个保存静态数据,另一个暂时保存主数组的单个索引。
我想在弹出窗口中显示临时数组值,如果选择了新索引,则数据应该可以移动到下一个数组值。
我的问题是:如果我尝试显示我的固定数组值,它会显示正常,但是 如果我尝试显示临时数组值没有显示。我是 使用完全相同的技术来显示和静态 数组工作。
HTML
<button type="button" class="btn btn-default btn-block" ng-model="ModelA" ng-click="$ctrl.Id(1);">More Info</button>
//POPUP
<script type="text/ng-template" id="myModalContent.html">
<div ng-controller="PopupCtrl as $ctrl">
<div class="modal-header">
<h2 class="modal-title" id="modal-title">{{$ctrl.array2}}</h2>
</div>
<div class="modal-body" id="modal-body">
<h3>{{$ctrl.array1}}</h3>
<p>{{$ctrl.array1}}</p>
</div>
<div class="modal-footer">
<button class="btn btn-primary" type="button" ng-click="$ctrl.ok()">OK</button>
<button class="btn btn-warning" type="button" ng-click="$ctrl.cancel()">Cancel</button>
</div>
</div>
</script>
Javasccript 的阵列
$ctrl.array1 = [{id: 1, name: 'name1'},{id: 2, name: 'name2'}]
$ctrl.array2 = [];
$ctrl.Id = function (ModelA) {
console.log('ModelA', ModelA);
for (var i = 0; i < $ctrl.array1.length; i++) {
if ($ctrl.array1[i].id == ModelA) {
$ctrl.array2.push($ctrl.array1[i]);
}
}
$ctrl.open('lg');
}
$ctrl.open = function (size) {
var modalInstance = $uibModal.open({
animation: $ctrl.animationsEnabled,
ariaLabelledBy: 'modal-title',
ariaDescribedBy: 'modal-body',
templateUrl: 'myModalContent.html',
controller: 'ModalInstanceCtrl',
controllerAs: '$ctrl',
size: size,
resolve: {
items: function () {
return $ctrl.array2;
}
}
});