我有一个像这样的输入元素:
<input type="text" google-place-search id='city' placeholder="Type to search" name='city' [(ngModel)]='user.city'>
在某些情况下,我希望以编程方式设置此元素的值。所以我用:
setAddress(addressObj){
this.user.city = addressObj;
}
但是,这似乎并不绑定新值。我可以看到在调用setAddress时传入了正确的参数,但是输入元素没有发生变化。我在这里想念东西吗?
这是Angular 6。
编辑1:
google.maps.event.addListener(autocomplete, 'place_changed', () => {
this.aboutYouComp.setAddress(autocomplete.getPlace().name);
});
这就是它的称呼
答案 0 :(得分:0)
由于您正在使用两种方式进行数据绑定,因此可以只在组件的类中声明用户对象及其属性,然后使用[[)]在模板中访问它。 但是,您还说正在调用setAddress方法。您的代码在哪里发生。因为似乎在输入元素中没有调用它?