firefox - 如何让双向数据绑定(bind) <select> 在 Firefox 中工作

标签 firefox select typescript angular

<分区>

更新:我在 github 上得到了答复.该错误将在 Angular 2 beta 16 中修复。

这是 <select> 的简单双向数据绑定(bind).

Live demo using plnkr .

@Component({
  selector: 'my-app',
  template: `
    <select [(ngModel)]="product.partCode">
      <option *ngFor="#part of parts" [value]="part.code">{{part.name}}</option>
    </select>
    <select [(ngModel)]="product.levelCode">
      <option *ngFor="#level of levels" [value]="level.code">{{level.name}}</option>
    </select>
    {{product|json}}
  `
})
export class App {
  product = { partCode: 'aa', levelCode: 'lv1' };
  parts = [
    { code: 'aa', name: 'AA' },
    { code: 'bb', name: 'BB' }
  ];

  levels = [
    { code: 'lv1', name: 'Level 1' },
    { code: 'lv2', name: 'Level 2' }
  ];
}

当您选择一个新选项时,{{product|json}}可以显示它的变化。这在 ChromeSafariOpera 中运行良好。

但是,当我使用 Firefox Developer Edition 47.0a2Firefox Nightly 48.0a1 时,{{product|json}}不会改变。我怎样才能让它在 Firefox 中也能工作?谢谢

或者这可能是一个错误?我应该向 Angular 2 还是 Firefox 报告?

最佳答案

看起来 选择双向数据绑定(bind) 在 Firefox 上有问题,我尝试使用 Angular2 文档中的示例: https://angular.io/resources/live-examples/forms/ts/plnkr.html它与您的问题相同。

在错误修复之前,您可以用更旧的时尚代码替换,例如:

import {Component} from 'angular2/core'

@Component({
  selector: 'my-app',
  template: `
    <select (change)="selectPart($event)">
      <option *ngFor="#part of parts" [value]="part.code">{{part.name}}</option>
    </select>
    <select (change)="selectLevel($event)">  
      <option *ngFor="#level of levels" [value]="level.code">{{level.name}}</option>
    </select>
    {{product|json}}
  `
})
export class App {
  product = { partCode: 'aa', levelCode: 'lv1' };
  parts = [
    { code: 'aa', name: 'AA' },
    { code: 'bb', name: 'BB' }
  ];

  levels = [
    { code: 'lv1', name: 'Level 1' },
    { code: 'lv2', name: 'Level 2' }
  ];

  selectPart($event) {
    this.product.partCode = $event.target.value; 
  }

  selectLevel($event) {
    this.product.levelCode = $event.target.value;
  }
}

更新的插件:http://plnkr.co/edit/4cHCyBrSI932LOKKcxEN?p=preview

关于firefox - 如何让双向数据绑定(bind) <select> 在 Firefox 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36828450/

相关文章:

javascript - Firefox 附加组件 : Synchronous communication?

mysql - SELECT DISTINCT,尝试从连接中提取,需要唯一的结果

Spring JSP 选择数字范围列表

typescript 文件命名约定

javascript - TypeScript 返回不可变/常量/只读数组

css - 以 % 为单位设置最大宽度样式的图像由 Firefox 以 px 为单位输出。适用于 Chrome

javascript - Firefox 扩展与 Greasemonkey 脚本?

Javascript:如何在 Select block 中记录.print 选项值?

python-3.x - AWS CDK - 访问新功能

java - 允许将我自己的网站加载到 iframe 中