Улучшить эту документацию Просмотреть исходный код $routeProvider
Используется для настройки маршрутов.
См. $route для примера настройки и использования ngRoute.
Зависимости
Требуется модуль ngRoute для установки.
Методы
-
when(path, route);
Добавляет новое определение маршрута к сервису
$route.Параметры
Параметр Тип Подробности path stringПуть маршрута (сопоставляется с
$location.path). Если$location.pathсодержит избыточный конечный слеш или его нет, маршрут все равно будет сопоставлен, и$location.pathбудет обновлен для добавления или удаления конечного слэша, чтобы точно соответствовать определению маршрута.-
pathможет содержать именованные группы, начинающиеся с двоеточия: например,:name. Все символы до следующего слэша сопоставляются и сохраняются в$routeParamsпод заданнымnameпри совпадении маршрута. -
pathможет содержать именованные группы, начинающиеся с двоеточия и заканчивающиеся звездочкой: например,:name*. Все символы жадно сохраняются в$routeParamsпод заданнымnameпри совпадении маршрута. -
pathможет содержать необязательные именованные группы с вопросительным знаком: например,:name?.Например, маршруты, такие как
/color/:color/largecode/:largecode*\/editбудут соответствовать/color/brown/largecode/code/with/slashes/editи извлекать: -
color: brown -
largecode: code/with/slashes.
route ObjectИнформация о сопоставлении, которая должна быть назначена
$route.currentпри совпадении маршрута.Свойства объекта:
-
controller–{(string|function()=}– Функция контроллера, которая должна быть связана с только что созданным scope или имя зарегистрированного контроллера, если передано в виде строки. -
controllerAs–{string=}– Имя идентификатора для ссылки на контроллер. Если присутствует, контроллер будет опубликован в scope под именемcontrollerAs. -
template–{string=|function()=}– html шаблон в виде строки или функция, возвращающая html шаблон в виде строки, который должен использоваться директивами ngView или ngInclude. Это свойство имеет приоритет надtemplateUrl.Если
templateявляется функцией, она будет вызвана со следующими параметрами:-
{Array.<Object>}- параметры маршрута, извлеченные из текущего$location.path()с применением текущего маршрута
-
-
templateUrl–{string=|function()=}– путь или функция, возвращающая путь к html шаблону, который должен быть использован директивой ngView.Если
templateUrlявляется функцией, она будет вызвана со следующими параметрами:-
{Array.<Object>}- параметры маршрута, извлеченные из текущего$location.path()с применением текущего маршрута
-
-
resolve-{Object.<string, function>=}- Необязательный набор зависимостей, которые должны быть инжектированы в контроллер. Если какие-либо из этих зависимостей являются промисами, маршрутизатор будет ждать, пока все они будут разрешены или один будет отклонен, прежде чем контроллер будет создан. Если все промисы будут успешно разрешены, значения разрешенных промисов будут инжектированы, и будет выведено событие $routeChangeSuccess. Если любой из промисов будет отклонен, то будет выведено событие $routeChangeError. Для более простого доступа к разрешенным зависимостям из шаблона, картаresolveбудет доступна в scope маршрута под$resolve(по умолчанию) или с помощью пользовательского имени, указанного свойствомresolveAs(см. ниже). Это особенно полезно при работе со компонентами как шаблонами маршрутов.
Примечание: Если в scope уже есть свойство с таким именем, оно будет скрыто или перезаписано. Убедитесь, что вы указали подходящее имя для этого свойства, которое не конфликтует с другими свойствами в scope.Карта объекта:-
key–{string}: имя зависимости, которая должна быть инжектирована в контроллер. -
factory-{string|function}: Еслиstring- это псевдоним службы. В противном случае, если это функция, то она инжектируется, а возвращаемое значение рассматривается как зависимость. Если результат является промисом, он разрешается перед тем, как его значение будет инжектировано в контроллер. Имейте в виду, чтоngRoute.$routeParamsвсе равно будет ссылаться на предыдущий маршрут внутри этих функций разрешения. Используйте$route.current.paramsдля доступа к параметрам нового маршрута вместо этого.
-
-
resolveAs-{string=}- Имя, под которым картаresolveбудет доступна в scope маршрута. Если опущено, по умолчанию$resolve. -
redirectTo–{(string|function())=}– значение для обновления пути $location и запуска перенаправления маршрута.Если
redirectToявляется функцией, она будет вызвана со следующими параметрами:-
{Object.<string>}- параметры маршрута, извлеченные из текущего$location.path()с применением текущего шаблона маршрута Url. -
{string}- текущий$location.path() -
{Object}- текущий$location.search()
redirectToвернет строку, которая будет использована для обновления$location.path()и$location.search(). -
-
[reloadOnSearch=true]-{boolean=}- перезагрузить маршрут, когда изменяются только$location.search()или$location.hash().Если параметр установлен в
falseи url в браузере меняется, то событие$routeUpdateтранслируется в корневом scope. -
[caseInsensitiveMatch=false]-{boolean=}- соответствие маршрутов без учета регистраЕсли параметр установлен в
true, то конкретный маршрут может быть сопоставлен без учета регистра
Возвращает
Objectself
-
-
otherwise(params);
Устанавливает определение маршрута, которое будет использоваться при изменении маршрута, когда ни одно другое определение маршрута не соответствует.
Параметры
Параметр Тип Подробности params ObjectstringИнформация о сопоставлении, которая должна быть назначена
$route.current. Если вызвана со строкой, значение сопоставляется сredirectTo.Возвращает
Objectself
Свойства
-
caseInsensitiveMatch
Логическое свойство, указывающее, должны ли маршруты, определенные с помощью этого поставщика, сопоставляться с использованием алгоритма, не учитывающего регистр. По умолчанию
false.
© 2010–2017 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://code.angularjs.org/1.5.11/docs/api/ngRoute/provider/$routeProvider