【问题标题】:How to change route inside the function "autocomplete.addListener()" ? AngularJs Google Maps API如何更改函数“autocomplete.addListener()”内的路由? AngularJs 谷歌地图 API
【发布时间】:2019-07-11 20:27:47
【问题描述】:

我想在选择一个建议时将路由更改为 '/blood_test' 但它没有发生,只能正确获取 console.log

但是将$location.path('/blood_test'); 放在函数之外时,路线正在改变

 $location.path('/blood_test');
autocomplete.addListener('place_changed', function() {
          console.log('yoyoyoyo');
          $location.path('/blood_test');
       });

 autocomplete.addListener('place_changed', function() {
          console.log('yoyoyoyo');
          $location.path('/blood_test');
       });

我预计到 '/blood_test' 的路线会改变,但它会保持在同一路线上。

【问题讨论】:

    标签: angularjs google-maps-api-3 google-maps-autocomplete


    【解决方案1】:

    place_changed 事件在角度上下文之外触发,你必须替换

    $location.path(url);
    

    $scope.$apply(function() {
        $location.path(url);
    });
    

    Here is a demo

    【讨论】:

      猜你喜欢
      • 2014-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多