1. AngularJS使用
$injetor(注入器服务)来管理依赖关系的查询和实例化。事实上, $injetor负责实例化AngularJS中所有的组件,包括应用的模块、指令和控制器等。在运行时, 任何模块启动时$injetor都会负责实例化,并将其需要的所有依赖传递进去。
以在需要的地方通过参数进行传递的方式来进行依赖注入的。
在内部, AngularJS的处理过程是下面这样的: // 使用注入器加载应用 var injector = angular.injector([‘ng‘, ‘myApp‘]); // 通过注入器加载$controller服务: var $controller = injector.get(‘$controller‘); var scope = injector.get(‘$rootScope‘).$new(); // 加载控制器并传入一个作用域,同AngularJS在运行时做的一样 var MyController = $controller(‘MyController‘, {$scope: scope})
时间: 2024-10-23 01:41:50