如何在AngularDart中使用选择元素的onchange事件传递对象而不是字符串?

时间:2019-02-22 00:50:48

标签: angular-dart

这就是我要完成的事情。

<select (ngModelChange)="addChild($event)">
    <option>Add</option>
    <option [value]="null">New Item</option>
    <option *ngFor="let child of menuItem.children" [value]="child">
        {{child.title}}
    </option>
</select>

在编译时,不会调用addChild方法。 VSCode报告“绑定输出ngModelChange在任何指令或元素上都不存在”-那么我需要添加什么指令?

2 个答案:

答案 0 :(得分:0)

尝试将第一行更改为:

<select (change)="addChild($event)">

那应该做的。

您可能还会发现方便地打印字符串而不是预期的完整对象:

<option *ngFor="let child of menuItem.children" [value]="child.id">

也许(也许不是):

<select (ngModelChange)="addChild(child.id)">

当然,如果它对您更好,并且您拥有合适的财产。 YMMV。

答案 1 :(得分:0)

AngularDart的SelectElement仅支持值的字符串。如果要传递任意对象,则需要使用其他组件-支持此类功能的组件。