• [Angular] @ContentChildren and QueryList


    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);
            })
          });
        }
      }

  • 相关阅读:
    alternatives命令用法
    Apache Kafka官方文档翻译(原创)
    java===泛型
    java===map集合
    java===集合框架之HashSet,treeSet
    java===集合之linkedlist
    java===集合框架之list体系
    StringBuilder===练习
    java===String类练习
    java练习多线程
  • 原文地址:https://www.cnblogs.com/Answer1215/p/6414674.html
Copyright © 2020-2023  润新知