在Chrome打包的应用中,使用angular.dart,在组件html中,我有下表,它正在显示对象列表的分页内容;进出口。工作:
<tbody>
<tr id="{{job.jobID}}" ng-repeat="job in jComp.jobs | pagination:jComp.paginator.instance" ng-model="job" ng-click="jComp.selectJob(job.jobID)">
<td>{{job.jobID}}</td>
<td>
{{job.productID}}<br>
{{job.productDescription}}<br>
</td>
<td>{{job.productType}}</td>
<td><img alt="No thumb" ng-src="{{job.thumbFURL}}"/></td>
<td>{{job.status}}</td>
</tr>
</tbody>
然后在我的组件中,我正在显示一个弹出模式div,要求用户选择一个动作。当用户单击以更改job.status时,会有第二层确认模式,并且在组件中确认后,我将从jComp.jobs列表中找到作业并更新状态。在弹出窗口模式中,状态会更新,但在表格中它仍然显示旧状态。然后,当我分页到下一页并返回时,它会更新。在页面切换之前它保持不变?我在更新作业列表后尝试调用scope.apply(),但它没有帮助。我想知道什么是paginator.goNext()或paginator.goPrev()这样做会导致表列表刷新。不清楚在这种情况下双向数据绑定是如何工作的。 (使用angular_pagination包完成分页)
答案 0 :(得分:0)
我尝试使用:
<td ng-bind="job.status"/>
而不是:
<td>{{job.status}}</td>
它解决了这个问题。我不确定为什么双括号没有将列表中的对象注册到更改侦听器/观察者。据我所知,双向绑定应该与{{}}一起使用,但在这种情况下,有些东西会破坏它。它可能是双括号中的错误。