Я хочу иметь ссылку, которая идет на другую страницу, и ничто, что я делаю, не имеет видимого эффекта на странице. Я пытался:
<a href="url">
<a href="url" target="_self">
<a ng-click="register()">
где регистр - это функция контроллера, с телами функций, которые я пробовал:
$window.location.href(url)
$window.location.href= url
$window.location = url
все за которым следует $window.location.reload()
(который даже не обновляет страницу после неспособности изменить URL-адрес). Каждый метод был принят в качестве действительного ответа для других людей, задающих тот же вопрос. Я использую угловой 1.2, который довольно старый.
РЕДАКТИРОВАТЬ: Извините за то, что вы не указали больше, чтобы избежать путаницы; url является просто заполнителем строки строки, и все мои элементы закрыты должным образом. Я просто пытался быстро перечислить все методы, которые я видел с других страниц на этом сайте (все это не удалось). Я также в html5mode для $ location.
Пытаться:
$location.path("/Home/Index....");
$ должно быть введено в контроллер. Используйте это в своем событии ng-click. $ location.path
Не знаю, сделали ли вы это, но ваш HTML должен выглядеть так:
<a ng-href="{{url}}">
Так я обычно это делаю. В вашем html:
<a href="javascript:" ng-click="register();">Register here!</a>
И в вашем контроллере у вас будет такая функция:
$scope.register = function() {
$window.location = '#/register';
};
Например, ваша домашняя страница - domain.com/#/home
и вы пытаетесь установить ссылку на domain.com/#/register
.
$window.location.reload()
ни window.location.reload()
ничего не делают при вызове в angular (последний работает, если вызывается из консоли) ,
Возможно, опечатка html, но вы пишете их в хорошем синтаксисе?
<a href="url">My link </a>
<a href="url" target="_self">My link </a>
<a ng-click="register()">My link </a>
ng-click
я бы добавил href="#"
чтобы иметь нормальные стили ссылок. Пожалуйста, посмотрите на этот plunkr .
ng-click
в тег <a>
, вместо этого используйте span
, div
или p
$window.location.reload()
иwindow.location.reload
поскольку ни один из них не делает ничего в сервисе или директиве, но последний работает в консоли.$location.path('/Home/Index...'); $route.reload();
$ route.reload