我收到的错误消息是:
语法错误:令牌'。'是意料之外的,期望[]在表达式[]的第23行,从[{4}]开始。
导致问题的违规HTML。
<tr ng-repeat="record in key_table">
<td ng-repeat="data in record">
{[{ data }]}
</td>
<td>
<button type="button" class="btn btn-default" ng-click="$ctrl.open({[{ record.KeyNum }]})">Open me!</button>
</td>
<td>
<button>Edit</button> <button>Delete</button>
</td>
</tr>
angularjs中的open函数:
angular.module('KeyManager').controller("KeyController", function( httpFactory, $uibModal) {
$ctrl = this;
$ctrl.open = function () {
var modalInstance = $uibModal.open({
animation: true,
ariaLabelledBy: 'modal-title',
ariaDescribedBy: 'modal-body',
templateUrl: 'RecordViewer.html',
controller: 'RecordViewerInstanceCtrl',
controllerAs: '$ctrl',
size: "lg",
resolve: {
items: function (keyNum) {
httpFactory.getRecord(keyNum).then(
function(response) {
$ctrl.items = response.data[0];
},
function(response) {
console.log(response);
$ctrl.items = [];
}
);
return $ctrl.items;
}
}
});
});
另外,请注意我在twig文件中执行此操作,因此start和end符号分别更改为“{[{”和“}]}”。
添加信息:
我尝试将ng-click指令切换为
"$ctrl.open(record.KeyNum)"
但是这只打印出文字字符串record.KeyNum,这是解释here所以@smarx评论是答案。
答案 0 :(得分:1)
我想你只想要$ctrl.open(record.KeyNum)
。