我正在尝试更改ng-table的选定行。使用此代码,我可以选择ng-table的第一行,但是在初始调用中,override func awakeWithContext(context: AnyObject?) {
super.awakeWithContext(context)
let ua = NSUserActivity(activityType: "com.mycompany.doingSomething")
ua.userInfo = ["My key": "My value"]
self.currentUserActivity = ua
}
似乎没有触发,因为样式未应用于所选行。但是在第二次调用函数时,应用了样式。
这是我们的选择功能:
data-ng-class
这是表格行:
function changeSelection(agreement) {
if (agreementNumberService.isSelectable === true) {
agreementVM.isSelectable = true;
if (agreement.$selected) {
agreement.$selected = !agreement.$selected;
} else {
agreement.$selected = true;
}
//agreement.$selected = !agreement.$selected;
if (agreementVM.selectedItem && agreementVM.selectedItem !== agreement) {
agreementVM.selectedItem.$selected = false;
}
agreementVM.selectedItem = agreement;
}
}
你知道为什么第一次调用函数时没有应用样式,而是在后续调用中?提前谢谢。
答案 0 :(得分:0)
以下对视图的更改修复了问题。上一个表达式存在问题。
<tr data-ng-repeat="agreement in $data" data-ng-click="vm.changeSelection(agreement)"
data-ng-class="{'active': (agreement.agreementNumber == vm.selectedItem.agreementNumber)}">