Я пытаюсь использовать нг-клик функцию AngularJS для переключения видов. Как бы я поступил так с кодом ниже?
index.html
<div ng-controller="Cntrl">
<div ng-click="someFunction()">
click me
<div>
<div>
controller.js
function Cntrl ($scope) {
$scope.someFunction = function(){
//code to change view?
}
}
javascript
angularjs
ngroute
The_Brink
источник
источник
<a href="https://stackoverflow.com/edit">Edit</a>
Angular примет меры, чтобы щелчок не создавал перезагрузку страницы. Это поведение может быть изменено так, что оно вызывает перезагрузку, если это необходимо.Предоставленный ответ является абсолютно правильным, но я хотел бы расширить для любых будущих посетителей, которые могут захотеть сделать это более динамично -
По мнению -
В контроллере -
Та же самая базовая концепция, что и принятый ответ, просто добавление в нее динамического контента, чтобы немного улучшить. Если принятый ответ захочет добавить это, я удалю свой ответ.
источник
url
на самом деле полный веб - адрес, в том числе протокола (HTTP: //) и все. Как следует из$location.path()
вашей переменной лучше описать какpath
.У меня есть пример работы.
Вот как выглядит мой документ:
Вот как выглядит мой фрагмент:
Вот как выглядит мой Ctrl:
приложение мой модуль:
Надеюсь, это полезно!
источник
Метод, использованный для всех предыдущих ответов на этот вопрос, предлагает изменить URL-адрес, который не является необходимым, и я думаю, что читатели должны знать об альтернативном решении. Я использую ui-router и $ stateProvider, чтобы связать значение состояния с templateUrl, который указывает на html-файл для вашего просмотра. Тогда это просто вопрос внедрения $ state в ваш контроллер и вызова $ state.go ('state-value') для обновления вашего представления.
В чем разница между angular-route и angular-ui-router?
источник
Для этого есть два пути:
Если вы используете ui-router или
$stateProvider
, сделайте это как:если вы используете angular-router или
$routeProvider
, сделайте это:источник
Без полной модернизации среды маршрутизации по умолчанию (# / ViewName) я смог немного изменить подсказку Коди и заставить ее работать великолепно.
контроллер
вид
Что привело меня к этому решению, так это то, что когда я пытался интегрировать виджет пользовательского интерфейса Kendo Mobile в угловую среду, я терял контекст моего контроллера, а поведение обычного тега привязки также было угнано. Я восстановил свой контекст из виджета Kendo, и мне нужно было использовать метод для навигации ... это сработало.
Спасибо за предыдущие посты!
источник
Надеюсь, что это поможет вам
источник
Эта маленькая функция хорошо послужила мне:
Вам не нужен полный путь, только вид, на который вы переключаетесь
источник