(angular)如何构建一个活的显示组件,后台传回任意类型的list对象

发布于 2022-09-06 12:48:32 字数 699 浏览 7 评论 0

目前单层对象也可以通过下列方式解决

class  Person{
    constructor(private name: string, private age: number,private describe: string){}
}


function main(): void {
   let persons = new Array<Person>();
   persons.push(new Person('aa',11,'bb'));
   persons.push(new Person('aa',11,'bb'));
   persons.push(new Person('aa',11,'bb'));
   persons.push(new Person('aa',11,'bb'));
   persons.push(new Person('aa',11,'bb'));
   persons.push(new Person('aa',11,'bb'));
   persons.push(new Person('aa',11,'bb'));

   showField(persons);
}

function showField(datas :Array<any>): void{
    for(let fi in datas[0]){
        console.log(fi + datas[0][fi]);
    }
}

main();

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不气馁 2022-09-13 12:48:32

谢邀。

<div [ngClass]="containerClasses" [ngStyle]="containerStyles">
    <ng-container *ngFor="let opt of options?.children">
         <ng-container *ngIf="opt  && opt.selector && opt.options">
              <component1 *ngIf="opt.selector === 'component1'" [options]="opt.options">            
              </compnent1>
              <component2 *ngIf="opt.selector === 'component2'" [options]="opt.options">            
              </compnent2>
              ...
              <ng-container *ngFor="let subopt of opt.children">
                  <ng-container *ngIf="subopt && subopt.selector && subopt.options">
                      <component3 *ngIf="subopt.selector === 'component3'"[options]="subopt.options">            
                      </compnent3>
                      <component4 *ngIf="subopt.selector === 'component4'" [options]="subopt.options">            
                      </compnent4>
                      ....
                  </ng-container>
              </ng-container>
         </ng-container>
    </ng-container>
</div>
                

以上代码实现了一个多层动态组件的container,你需要什么组件,只要把它放到container下面就可以了。
归根到底,就是维护一个options的对象。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文