【问题标题】:How to create element with dynamic name in ngModel?如何在 ngModel 中创建具有动态名称的元素?
【发布时间】:2019-02-11 11:12:31
【问题描述】:

如何在 ngModel 中创建具有动态名称的元素?

 <div class="form-group" *ngFor="let setting of settings">
    <label [for]="setting.name + '-' + setting.type">Setting</label>
    <input type="number" class="form-control"
           [id]="setting.name + '-' + setting.type"
           [name]="setting.type + '_typeInterval'"
           [(ngModel)]="setting.timeInterval"
           required #"{{setting.type + '_typeInterval'}}"="ngModel">
    <div class="errors-area" *ngIf="setting.type + '_typeInterval'".errors">
        <span *ngIf="setting.type + '_typeInterval'".errors.required">Required</span>
    </div>
</div>

如何使 ngModel 类型的变量可以动态分配名称?在这种情况下,setting.type + '_typeInterval'。

【问题讨论】:

    标签: angular angular2-ngmodel


    【解决方案1】:

    您可以使用数组表示法,带有this 关键字,如@9​​87654321@ 所示:

    <input type="text" [(ngModel)]="this['someVar']">
    <input type="text" [(ngModel)]="this[some + Var]">
    

    【讨论】:

    • 不一定那样。我需要一个动态名称,它会出现在 # 中的代码中。 #"{{setting.type + '_typeInterval'}}"
    • 如果您想要引用您的控件,而不是像我向您展示的那样动态命名您的ngModel,请考虑使用为此而设计的FormControl
    猜你喜欢
    • 2021-09-12
    • 2010-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    • 2023-04-07
    相关资源
    最近更新 更多