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

问题描述 投票:0回答:2

这就是我想要完成的事情。

<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在任何指令或元素上都不存在” - 所以我需要添加什么指令?

angular-dart
2个回答
0
投票

尝试将第一行更改为:

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

那应该做的。

您也可以找到方便打印字符串而不是预期的完整对象:

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

也许(或许不是):

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

如果它对你有效并且你有合适的财产,当然。因人而异。


0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.