首页 > 其他 > 详细

[Angular] @ContentChildren and QueryList

时间:2017-02-19 10:34:34      阅读:168      评论:0      收藏:0      [点我收藏+]

We have looked at @ContentChild in article(http://www.cnblogs.com/Answer1215/p/6414657.html).

Now let‘s how to query multi children by using @ContentChildren and QueryList.

 

First of all, let‘s add few more auth-remember component into our form component.

      <auth-form 
        (submitted)="loginUser($event)">
        <h3>Login</h3>
        <auth-remember
          [role]="‘checkbox1‘"  
          (checked)="rememberUser($event)">
        </auth-remember>
        <auth-remember
          [role]="‘checkbox2‘"  
          (checked)="rememberUser($event)">
        </auth-remember>
        <auth-remember
          [role]="‘checkbox3‘"  
          (checked)="rememberUser($event)">
        </auth-remember>
        <button type="submit">
          Login
        </button>
      </auth-form>

 

Then inside auth-form component, we can query all the auth-remember components:

@ContentChildren(AuthRememberComponent) remembers: QueryList<AuthRememberComponent>;

Then lot out in the ngAfterContentInit lifecycle:

  ngAfterContentInit(): void {
    if(this.remembers) {
      this.remembers.forEach((item: AuthRememberComponent, i: number) => {
        console.log("item:", item);
        item.checked.subscribe((checked: boolean) => {
          console.log(`${i}: checked`, checked);
        })
      });
    }
  }

技术分享

[Angular] @ContentChildren and QueryList

原文:http://www.cnblogs.com/Answer1215/p/6414674.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!