У меня есть эта часть макета html:
<body ng-controller="MainController">
<div id="terminal"></div>
<div ng-view></div>
<!-- including scripts -->
</body>
Теперь, по-видимому, когда я пытаюсь использовать $routeParams
в MainController
, он всегда пуст. Важно отметить, что MainController
предполагается действовать во всех возможных маршрутах; поэтому я не определяю его в своем приложении. Я имею в виду, я не определяю его здесь:
$routeProvider.when("/view1", {
templateUrl: "partials/partial1.html"
controller: "MyCtrl1"
})
$routeProvider.when("/view2", {
templateUrl: "partials/partial2.html"
controller: "MyCtrl2"
})
// I'm not defining MainController here!!
На самом деле, я думаю, что моя проблема совершенно такая же, как эта: https://groups.google.com/forum/#!topic/angular/ib2wHQozeNE
Однако, я до сих пор не понимаю, как получить параметры маршрута в моем основном контроллере...
EDIT:
Я имел в виду, что я не связываю свой MainController с каким-либо конкретным маршрутом. Он определил; и это родительский контроллер всех других контроллеров. Я пытаюсь понять, что когда вы переходите к URL-адресу типа /whatever
, который сопоставляется с маршрутом, например /:whatever
, почему он может получить доступ к параметру маршрута, основного контроллера нет? Как получить параметр маршрута :whatever
в моем основном контроллере?