angularjs - 如何从url中检索数据

时间:2015-12-31 12:21:47

标签: javascript angularjs http

我有一个场景,我需要使用angularjs从URL获取数据。例如:

example.com/sampleurl?hk=123

我想获取变量hk的数据123并在我的控制器中使用它。我怎样才能做到这一点?到目前为止,我尝试用Google搜索 angularjs http get ,但似乎没有得到任何参考。

3 个答案:

答案 0 :(得分:1)

使用$location.search()

  

此方法是getter / setter。

     

在没有任何参数的情况下调用时返回当前url的搜索部分(作为对象)。

     

使用参数调用时更改搜索部分并返回$ location。

示例:

var hk = $location.search().hk;

答案 1 :(得分:1)

如果你使用ui-router,你可以这样做

.state('example', {
  url: 'example/:hk',
  views: {
    'content@': {
      templateUrl: 'example.html',
      controller: 'ExampleController'
    }
  }
});

通过注入$ stateParams

返回ExampleController中的参数
angular.module('app').controller('ExampleController', function($stateParams) {
  let hk = $stateParams.hk;
};

例如,当您到达youapp.com/example/aValue时, ExampleController中的hk将等于'aValue'

答案 2 :(得分:0)

如果您将控制器声明为:

var myApp = angular.module('myApp', []);
myApp.controller('FormCtrl', function ($scope, $http) {
...
}

然后,您可以访问控制器中的$http.get (url, conf)'回调并使用.then来处理get响应。

Read the http angular doc