Angular2多个下拉列表受到相同更改的影响

时间:2016-02-04 19:29:33

标签: angular angular2-forms

我正在使用Angular2和javascript。目前在TreeView组件中有一个模板,如下所示:

<li>
  <label style="color:red">{{block.toString()}}</label>
  <select aria-label="block menu" (change)="blockMenuSelected(block,$event)">
    <option value="COPY_BLOCK" select>copy</option>
    <option value="CUT_BLOCK">cut</option>
    <option value="DELETE_BLOCK">delete</option>
  </select>
</li>
<li *ngIf= "block.nextConnection && block.nextConnection.targetBlock()">
  <tree-view [block]="block.nextConnection.targetBlock()"></tree-view>
</li>

请注意,它是一个递归组件。因此树视图组件中有一个树视图组件。问题是,当我在块菜单下拉列表中选择某些内容时,页面上的任何其他块菜单下拉列表也会受到该选择事件的影响。我试过给每个<select>元素一个唯一的id,但这并没有改变任何东西。我不确定这是一个Angular2错误还是我做错了什么。

1 个答案:

答案 0 :(得分:0)

尝试

blockMenuSelected(block, event) {
   event.preventDefault();
   event.stopPropagation();
   ...
}

ref https://github.com/angular/angular/issues/2042