English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
I. Start phase
The browser parses the HTML page, stops parsing the following DOM nodes after reading the <script> tag of angular.js, and starts executing angular.js at the same time. At this moment, Angular sets an event listener to listen to the DOMContentLoaded event. When Angular detects this event, Angular starts.
II. Initialization phase
After Angular starts, it looks for ng-Command app, then initialize a series of necessary components (i.e., $injector, $compile service, and $rootScope), and then continue to parse the DOM.
Terceiro. Fase de compilação e ligação
1. O Angular usa o serviço $compile para encontrar elementos DOM com instruções, navegando pela árvore DOM, e então ordena essas instruções encontradas com base na prioridade da instrução.
2. Em seguida, o serviço $injector usa para encontrar e coletar a função compile de cada instrução abaixo e executá-la.
3. Após a execução do método compile de cada nó, o serviço $compile chama a função de ligação. Esta função de ligação configura o monitoramento das instruções que ligam o escopo encerrado.
4. Após a conclusão de tudo acima, o Angular é iniciado
Quarto. Fase de execução
Angular oferece seu próprio ciclo de eventos. As instruções se registram automaticamente os listeners de eventos, então quando um evento é acionado, a função da instrução é executada no ciclo $digest do AngularJS. O ciclo $digest espera a lista de expressões $watch, quando detecta a mudança do modelo, chama a função $watch, e então novamente verifica a lista $watch para garantir que nenhum modelo tenha sido alterado. Assim que o ciclo $digest estiver estável e não houver mais mudanças potenciais, o processo sairá do contexto Angular e geralmente retornará ao navegador.
Isso é tudo o conteúdo deste artigo, esperamos que o conteúdo deste artigo ajude a aprendizagem ou ao trabalho de todos, e também esperamos que muitos apoiem o tutorial de gritos!
Declaração: o conteúdo deste artigo é de origem na Internet, pertence ao respectivo proprietário, o conteúdo é contribuído e carregado voluntariamente pelos usuários da Internet, o site não possui direitos de propriedade, não foi editado artificialmente e não assume responsabilidades legais relacionadas. Se você encontrar conteúdo suspeito de violação de direitos autorais, por favor, envie e-mail para: notice#oldtoolbag.com (ao enviar e-mail, troque # por @ para denunciar e forneça provas. Se confirmado, o site deletará imediatamente o conteúdo suspeito de infringência.)