Angular 需要点击两次才能显示 Google 地理编码位置

Angular requires two clicks to show Google Geocode location

我是 Angular 的新手,我想构建的其中一个应用程序会获取用户输入的位置,并通过 Google 地理编码 API 将其转换为坐标.我使用了 Angular 的数据绑定来显示页面中的坐标。但是,即使我按照 this answer.

中的建议使用 $rootScope 中的函数,按钮只会在单击两次后更改值

这是 jsfiddle

在为 $rootScope.position 分配新值后立即调用:

$rootScope.$apply();

这会通知 Angural 有关模型更改的信息。

改变这个:

$rootScope.position = results[0].geometry.location

对此:

 $rootScope.$apply(function() {
    $rootScope.position = results[0].geometry.location;
 });

您需要告诉 angular 将更改应用到视图。