Подтвердить что ты не робот

Лучший способ разобрать строку запроса с помощью AngularJS без использования html5mode

Какой лучший способ проанализировать строку запроса в Angular без с помощью html5mode? (Не использовать html5mode, потому что нам нужно поддерживать старые браузеры)

Я получаю те же результаты undefined, использую ли я хэш:

http://localhost/test?param1=abc&param2=def
http://localhost/test#/param1=abc&param2=def

$routeParams и $location.search() возвращают undefined:

var app = angular.module('plunker', ["ngRoute"]);

app.controller('MainCtrl', ["$scope", "$routeParams", "$location",
  function($scope, $routeParams, $location) {

  console.log($routeParams, $routeParams.abc); //undefined, undefined
  console.log($location.search(), $location.search().abc); //undefined, undefined

}]);

Я могу самостоятельно разобрать файл window.location.search, но я надеюсь, что есть лучший способ сделать это в Angular.

Plnkr: http://plnkr.co/edit/alBGFAkfqncVyK7iv8Ia?p=preview

Я прочитал этот пост и не нашел решения. Я должен что-то упустить. Спасибо за помощь.

4b9b3361

Ответ 1

параметры запроса должны идти после хэша:

http://localhost/test#/?param1=abc&param2=def

это должно позволить $location.search() возвращать объект вроде:

{
  param1: 'abc',
  param2: 'def'
}