AngularJS – Маршрут – Как сопоставить звездочку (*) как путь

StackOverflow https://stackoverflow.com//questions/12685085

  •  12-12-2019
  •  | 
  •  

Вопрос

Я создаю приложение для просмотра ресурсов, но проблема в том, что я пытался сопоставить when("/!/:resourceUrl").

Это работает нормально, если URL-адрес ресурса выглядит примерно так: /path, но как я могу сделать что-то вроде /path/to/the/resource.
Я не знаю, сколько путей это займет, поэтому я не могу сделать .when("/!/:path1/:path2/:path3").

Есть идеи?

Это было полезно?

Решение

Начиная с angular-1.2 вы можете сделать это:

when("/!/:resourceUrl*")

http://code.angularjs.org/1.2.0/docs/api/ngRoute.$routeProvider

В частности, в документации приводится следующий пример:

Например, такие маршруты, как /color/:color/largecode/:largecode*\/edit будет соответствовать /color/brown/largecode /code/with/slashs/edit и извлеките:

  • color: brown
  • largecode: code/with/slashs

Другие советы

На сегодняшний день Angularjs не поддерживает регулярные выражения в маршрутах.

Проверьте эти ссылки: https://github.com/angular/angular.js/Проблемы / 918 , https://github.com/angular/angular.js/ pull / 972

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top