首页 > 解决方案 > 如何在结构指令中传递输入变量?

问题描述

有一个结构指令:

 @Directive({
        selector: '[loading]',
    })
    export class LoadingDirective {
        loadingFactory: ComponentFactory<LoadingComponent>;
        loadingComponent: ComponentRef<LoadingComponent>;

        @Input()
        set loading(loading: boolean) {}
        @Input('loadingSize') size: number;
    
    }

我试图传递大小:

<span *loading="true size=20"></span>

标签: angular

解决方案


<span [loading]="true" [loadingSize]="20"></span>

每个输入属性都独立存在,并且*没有必要

编辑

改变

        @Input()
        set loading(loading: boolean) {}

@Input() loading: boolean;

否则你不会对这个值做任何事情,因为你的 setter 函数是空的


推荐阅读