Я пытаюсь заставить Angular игнорировать ссылки, если маршрут не существует, и пусть http выполняет работу.
У меня есть большое приложение Laravel, и я пытаюсь реализовать AngularJS для некоторых элементов интерфейса.
Проблема, которую я имею, заключается в том, что я хочу медленно добавлять угловой код на каждую страницу, но остальное приложение должно функционировать как обычно. Это не одностраничное приложение как таковое, а многостраничное приложение с функцией angluar.
Это моя угловая маршрутизация:
app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
$routeProvider.
when('/clients/:ClientID', {
templateUrl: "resources/js/angular/partials/DisplayLogCtrl.html",
controller: 'DisplayLogCtrl'
}).
otherwise({
//Go to normal Laravel route
});;
$locationProvider.html5Mode(true);
}]);
Нормальные ссылки, например <a href="/" class="reminder_reminder">Dashboard</a>
, работают неправильно. URL-адрес в адресной строке изменен, но ничего не меняется на экране.
кто-нибудь знает, почему это произошло? .. и смогу ли я сделать то, что хочу?
Угловое использование хэш-маршрутизации, поэтому ng-route только реально смотрит на путь, а не на весь URL-адрес. Хэш-маршрут выглядит следующим образом: www.example.com/#/client/14
. Если вы на этой странице и щелкните ссылку на '/', ваш браузер будет думать об этом уже на этой странице и ничего не делать. Я предполагаю, что угловой не видит изменения пути, поэтому ничего не происходит, но это трудно понять, не видя больше вашего кода.
<base>
в заголовке вашего документа? 2. у ваших ссылок установлен атрибут "target"? 3 Ваша ссылка начинается с / и ведет по другому пути, чем ваша "база"? (взято из документации здесь )
multi page app
что вы загружаете несколько страниц с сервера, на котором выполняется один и тот же угловой код? Или пытаетесь медленно конвертировать несколько страниц в одностраничное угловое приложение? Существует большая разница