当前位置: 首页 > 知识库问答 >
问题:

角材质选择未正确绑定对象值

蒯嘉赐
2023-03-14

我有一个非常简单的角度材料选择组件,从一个对象数组填充。我尝试了ngModel和component select属性的双向绑定,但两者都不能像预期的那样工作。

我所期望的:更改选择的选项将相应地更新ngModel值。

实际发生的情况:更改selected选项会触发select change方法,但不更新binded属性。

如何再现:选择选项2,然后回到选项1,只播放2个选项。

转载位置:https://stackblitz.com/edit/Angular-qpk2di

共有1个答案

狄阳秋
2023-03-14

所以您的错误其实并不复杂,您错误地使用了[()]大括号

  1. []是将值绑定到变量
  2. ()用于事件处理

您对值[(value)]使用了eventhandler和“DataBinder”,但您只想绑定

[value]=“选定选项”

事件使用(selectionOnChange)=“HandleYouRevent()”事件处理

 类似资料:
  • 我有一个mat select,其中的选项是数组中定义的所有对象。我试图将该值设置为其中一个选项的默认值,但是当页面呈现时,该值处于选中状态。 我的typescript文件包含: 我的HTML文件包含: 我已尝试将和

  • 我正在将一个对象传递给我的Angular组件,并试图在下拉列表呈现时使下拉列表显示已经选择的值。在我当前的代码中,下拉列表只显示第一个选项。我传入了第二个下拉选项的值。 在我的ts代码中,Object.Reason.code是一个值为“ex2”的字符串 下拉列表绑定到 这是我的html 所需的行为,如果Object.Reason.Code为undefind else如果字符串为EX2,下拉列表将显

  • 我使用的是:Angular 4.4.5@Angular/Material:2.0.0-beta.12

  • 我需要能够从角材料列表中删除选定的项目。为此,我决定从初始项目数组中减去选定项目数组(不确定这是最好的方法)。 我的问题是,我找不到一种方法来将超文本标记语言中的选定项数组传递给TS并使用它。 Angular材料在其留档中有以下示例: 其中x是mat-seltion-list选择器的ID,y是对所选元素执行的操作。但这似乎只适用于超文本标记语言。 下面是我不工作的代码。 HTML,其中我设置了列表

  • 我使用Angular 7.2创建一个选择控件,如下所示: 这正是我们想要的。我有一些代码希望删除选定的项目,大致如下: 虽然这会将其从选定项的数组中删除。如果我从选择控件中选择新值,则所有原始项仍被选中(即勾选)。 如何清除所选项目? 根据@Maarti的响应,我的代码现在可以使用

  • 我正在尝试使用一个有角度的材质(7.0)选择列表,如下所述。 页面上的示例代码片段是 使用TS文件中定义的,如其代码片段所述: 对我来说很有意义,但是当我尝试编译时,我得到了错误: 我已将导入到我的应用程序模块中。 我没有看到与要导入的列表选项相关的其他模块。 我错过了什么?