Spec-Zone.ru › Angular.js 1.5

Улучшить эту документацию Просмотреть исходный код $routeProvider

  1. $route
  2. поставщик в модуле ngRoute

Используется для настройки маршрутов.

См. $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, то конкретный маршрут может быть сопоставлен без учета регистра

    Возвращает

    Object

    self

  • otherwise(params);

    Устанавливает определение маршрута, которое будет использоваться при изменении маршрута, когда ни одно другое определение маршрута не соответствует.

    Параметры

    Параметр Тип Подробности
    params Objectstring

    Информация о сопоставлении, которая должна быть назначена $route.current. Если вызвана со строкой, значение сопоставляется с redirectTo.

    Возвращает

    Object

    self

Свойства

  • 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API