Angular2双向数据绑定问题

时间:2016-09-13 07:28:31

标签: angular

我正在尝试以双向数据绑定方式将buttons: { title: "key", value: "value" }, 控件绑定到第三方控件映射的缩放属性(输入应始终显示当前缩放级别,如果用户更改它,地图应该放大到这个水平)

目前,它仅适用于一个方向:对输入框的更改不会应用于地图视图。

input

编辑: 所以我添加了

输入

@Component({ selector: 'map-view', template: '<div id="mapView"></div><input [(value)]=zoom />' }) export class MapViewComponent { view: any = null; public zoom: number = 10; constructor(private _mapService: SimpleMapService, private elRef: ElementRef) { } ngOnInit() { this.view = new MapView({ container: this.elRef.nativeElement.firstChild, map: this._mapService.map, zoom: this.zoom, center: [10.44, 42.947974] }) this.view.watch('zoom', function(newVal, oldVal, propertyName) { this.zoom = newVal; }.bind(this)); } }

<input [(ngModel)]="zoom"  (ngModelChange)="updateZoom($event)">

到组件

它似乎正在发挥作用。但这真的是它应该做的方式吗?在Angular1中,它确实与updateZoom(newValue) { this.view.zoom = newValue; } 一起使用,没有任何事件。

1 个答案:

答案 0 :(得分:1)

试试这个<input [(value)]="zoom"; //&lt; -----在缩放附近添加双引号

OR

如何使用<input [(ngModel)]="zoom" >