Smart-Table 行选择问题

Smart-Table row selection issue

我正在使用没有 $scope 对象的 smart-table,它看起来不错,但是选择和回调工作很奇怪(选择只发生一半的时间)或者根本不工作。

Here,我找到了一个例子,正如你所看到的,行选择工作正常。

但是如果我们更改语法以使用 'controller As' 样式,那么 it does not work

现在,我将修改我的代码以使用 $scope。但是,作为 AngularJS 的初学者,如果有人告诉我为什么会发生这种情况以及有什么办法可以解决这个问题,我会很高兴,先谢谢你。

  1. 你的ng-options应该是这样的

    <select ng-model="events" 
        ng-options="event as event.label for event in vm.events"></select>
    

event as event.label for event in vm.events 意味着您指向 event.label 作为 event 模型 event vm.events

中的每个 event

ngOptions

  1. 然后在控制器中添加数据

这是你的updated plunk

编辑 1

  1. 到select整行你可以将ng-click绑定到<tr>,然后将它传递给当前的row,就像这样

    <tr ng-click="vm.selectRow(row)" ... >
    
  2. 要突出显示该行,您可以像这样使用ng-class

    <tr ... ng-class="{"highlight": row.selected===true}">
    

    并处理控制器中的 selection 逻辑。有很多方法可以实现这个。

forked the last plunk