地图上的编辑显示在 plunkr 上,但不显示在新的本地角度/CLI 生成的项目中



当你在地图或弱图上调用set时,除非你在plnkr上,否则Angular不会接收更改

@Component({
  selector: 'my-app',
  template: `
    <div>
      <button (click)="onClick()">click</button>
      {{ map | json }}
    </div>
  `,
  styles: [`
  `]
})
export class AppComponent {
  map = new Map();
  onClick () {
    this.map.set({'a':Math.random()}, {[Math.random()]: {'a':Math.random()}})
    console.log(this.map);
  }
}

这段非常简单的代码将在 Plunkr 中按预期更新https://plnkr.co/edit/xbn82sr8KK0oe4WjCX1m?p=preview

但是在本地,在通过 @angular/cli 新创建的项目中,它将无法正常工作控制台日志显示地图正在设置为,但屏幕仅呈现空数组。

添加 ChangeDetectorRef 并detectChangesmarkForCheck不会执行任何操作。

回购在这里:https://github.com/cheapsteak/ng-debug-map/blob/master/src/app/app.component.ts

找到了解决方案...在polyfills.ts 中,添加

import 'core-js/shim';

朝向文件顶部

最新更新