#javascript #angularjs #angular-ui-router
#javascript #angularjs #angular-ui-router
Вопрос:
Я хочу изменить состояние из консоли браузера.
Есть ли какой-либо способ запустить $state.go
функцию из самой консоли.
Обратите внимание, что для состояний не определен URL-адрес, поэтому я не могу использовать его для перехода в состояние.
Мне это требуется для более быстрой отладки моего приложения.
Ответ №1:
поставьте точку останова и остановите свой код там, где вводится состояние $, чтобы вы могли его использовать. Или вы можете просто ввести его в свой .run() и назначить его объекту window, чтобы вы могли запускать его из любого места в любое время…
Комментарии:
1. как в
angular.module('app').run(function($state) { window.$state = $state; });
Ответ №2:
Нет, вы не можете этого сделать, вы получите $ состояние не определено
suppose you write $state.go('landing.home');
поскольку $state определяется внутри контроллера при условии, что вы ввели $state в контроллер, экземпляр $state недоступен вне контроллера
Даже если вы хотите проложить маршрут через консоль, вы можете сделать одну вещь
Откройте консоль, но точка останова где-то внутри контроллера, затем напишите
$state.go('landing.home');
таким образом, он будет работать и перенаправлять на нужную страницу