Angularjs啟動過程

2021-08-04 19:08:15 字數 2660 閱讀 7050

步驟一

有兩個property,其它都是function

一共有5個方法

annotate:分析函式簽名(不要new的原因)

步驟二

if (window.angular.bootstrap)
angular的三種啟動方式步驟三嘗試繫結jquery,如果發現匯入了jquery ,則使用匯入的jquery,否則,使用angular自己封裝的jqlite

inangular.jsline 1521:

bindjquery();
inangular.jsline 1534:

jquery = window.jquery;

if (jquery && jquery.fn.on) );

測試

ng-controller="myctrl">

}span>

div>

div>

body>

html>

jsvar mymodule = angular.module("mymodule", );

mymodule.controller('myctrl', ['$scope',

function

($scope)

]);

檢視執行流程

步驟四發布ng提供的api

inangular.jsline 2162 : publishexternalapi(angular);

//構建模組載入器

angularmodule = setupmoduleloader(window);

try catch (e)

模組載入器的實現原理

inangular.jsfunctionsetupmoduleloader(window)

function

setupmoduleloader

(window)

var angular = ensure(window, 'angular', object);

// we need to expose `angular.$$minerr` to modules such as `ngresource` that reference it during bootstrap

angular.$$minerr= angular.$ $minerr || minerr;

//把module方法放到angular的全域性物件上,ensure就是乙個屬性拷貝的過程

return ensure(angular, 'module', function();

}

把工具函式給載到模組裡

return

function

module(name, requires, configfn)

檢視模組裡所包含的內容

html>

js

/**

* 定義模組

*/var mymodule = angular.module("mymodule", );

/** * 從debug的過程可以看到,angular中的「模組」只是乙個閉包空間(或者叫命名空間)

* 所有模組都被註冊在modules這個物件上

*/console.log(mymodule);

檢視控制台

構建內建模組ng

inangular.jsline 2169publishexternalapi(angular)

angularmodule('ng', ['nglocale'], ['$provide',

function ngmodule($provide) );

$provide.provider('$compile', $compileprovider).

directive();

bootstrap

function

bootstrap

(element, modules, config)

AngularJS的啟動過程分析

name angular 如果window.angular已經有值了,就把原有的賦值給前面angular,如果沒有則用window.angular空物件賦值給angular angular window.angular window.angular angularmodule,uid 0 funct...

mysql啟動過程長 mysql啟動過程

mysql啟動過程經過以下順序 1.mysql讀取配置檔案的順序 讀取順序 etc my.cnf etc mysql my.cnf usr etc my.cnf my.cnf 2.mysql啟動方式 mysql啟動方式有三種 mysqld mysqld safe mysqld multi 主要用於多...

Linux啟動過程

1 開啟 pc電源 pc加電後,乙個特殊的硬體電路會觸發 cpu 的 reset 腳的邏輯值,然後一些 cpu 暫存器,如 cs eip 等被給定乙個值,接著 cpu 跳轉到乙個固定位址開始執行 bios 2 bios 自檢,按設定的裝置啟動 bios 對硬體進行一系列徹底的檢查,如 cpu 型別 ...