绑定相关attr至指定元素

前面各个自定义组件的创建事实上都在BaseElement,BasePlaceholder,BaseLeaf帮助下将需要的attr标识自动绑定到了host上, 故用户不需要处理,但是并非所有的场景都需要绑定到host上,所以我们需要使用到directive: element-attrs, leaf-attrs, placeholder-attrs绑定到指定的位置,

接下来我们展示element-attrs.directive的使用:

  1. 假定我们需要一个Table组件,我期望将element attr绑定在tbody上而不是table/host上,故我们可以这样做

     // 在tbody上使用nsElementAttrs
     <tbody nsElementAttrs>
       <ng-container *ngFor="let portal of portals; trackBy: trackBy">
         <ng-template [cdkPortalOutlet]="portal"></ng-template>
       </ng-container>
     </tbody>
    
     // 覆写useHostAttrs方法
     useHostAttrs() {
        return false;
     }
    

    这样即可做到将element attrs放置到指定位置

Copyright all right reserved,powered by Gitbook该文件修订时间: 2021-06-23 09:50:49

results matching ""

    No results matching ""