// In directive class ReaderController { constructor($scope, readerService) { this.readerService = readerService } get statusDisplay() { return STATUS_DISPLAY[this.readerService.status] } } return { // ... controller: ReaderController, controllerAs: 'vm', template: ` <div> {{vm.statusDisplay}} </div> }
这样一来,大部分逻辑都可以挪到 controller 中。如果没有 DOM 操作我们甚至可以不写 link 方法。也没必要加入额外的 $watch 和 $on 。只是因为 dirty-checking 的特性,绑定到 template 的属性往往会多计算几次。所以属性必须非常简单。大部分情况下这不会有什么问题。
以上内容是小编给大家介绍的Angular 根据 service 的状态更新 directive,希望对大家有所帮助!
您可能感兴趣的文章: