Обнаружение углового изменения триггера с консоли

В AngularJS мы смогли запустить цикл дайджеста, получив элемент ng-app с чем-то вроде

var scope = angular.element(element).scope(); 
scope.$apply(...); 

Я искал решение для этого в Angular(4+), но нашел только решения, которые работают в приложении, например ( запуск обнаружения изменений Angular2 вручную). Мне нужно что-то, что работает с консоли.

Я уверен, что делаю это неправильно, но попытка применить ответ на вышеуказанный вопрос не сработала. Я перепробовал много вариантов этого:

ng.probe($0).injector.view.root.ngModule.injector.get('ApplicationRef')

2 ответа

Решение

Я обычно делаю это следующим образом в режиме разработки

ng.probe(getAllAngularRootElements()[0]).injector.get(ng.coreTokens.ApplicationRef).tick()

Решение 1:
1. Нажмите на элемент (на котором вы хотите активировать обнаружение изменений) в dev-tools Elements-Tab
2. ng.probe($0).injector.get(ng.coreTokens.ApplicationRef).tick()

Решение 2. Запустите детектор изменения определенных компонентов.
1. Нажмите на элемент (на котором вы хотите активировать обнаружение изменений) в dev-tools Elements-Tab
2. ng.probe($0).componentInstance.cdRef.detectChanges()

@guati Я получил ошибку "Не удалось загрузить модуль" (угол 7), ошибка была вызвана некоторыми изменениями в маршрутизации, но даже когда я отменил изменения, ошибка не исчезла (возможно, изменения не были обнаружены), поэтому Я просто перезапустил сервер разработки (снова обслуживал приложение), и он ушел.

Другие вопросы по тегам