依赖注入是一个在组件中给出的替代了硬的组件内的编码它们的依赖关系的软件设计模式。这减轻一个组成部分,从定位的依赖,依赖配置。这有助于使组件可重用,维护和测试。
AngularJS提供了一个至高无上的依赖注入机制。它提供了一个可注入彼此依赖下列核心组件。
值
值是简单的JavaScript对象,它是用来将值传递过程中的配置相位控制器。
$scope.square = function() {
$scope.result = CalcService.square($scope.number);
}
});
工厂
工厂是用于返回函数的值。它根据需求创造值,每当一个服务或控制器需要。它通常使用一个工厂函数来计算并返回对应值
//inject the factory "MathService" in a service to utilize the multiply method of factory.
mainApp.service('CalcService',function(MathService){
this.square = function(a) {
return MathService.multiply(a,a);
}
});
...
服务
服务是一个单一的JavaScript包含了一组函数对象来执行某些任务。服务使用service()函数,然后注入到控制器的定义。
$scope.square = function() {
$scope.result = CalcService.square($scope.number);
}
});
提供者
提供者所使用的AngularJS内部创建过程中配置阶段的服务,工厂等(相AngularJS引导自身期间)。下面提到的脚本,可以用来创建,我们已经在前面创建MathService。提供者是一个特殊的工厂方法以及get()方法,用来返回值/服务/工厂。
常量
常量用于通过配置相位值考虑事实,值不能使用期间的配置阶段被传递。
例子
下面的例子将展示上述所有指令。
testAngularJS.html
AngularJS Dependency Injection
AngularJS Sample Application
Enter a number:
Result: {{result}}
值
值是简单的JavaScript对象,它是用来将值传递过程中的配置相位控制器。
$scope.square = function() {
$scope.result = CalcService.square($scope.number);
}
});
工厂
工厂是用于返回函数的值。它根据需求创造值,每当一个服务或控制器需要。它通常使用一个工厂函数来计算并返回对应值
//inject the factory "MathService" in a service to utilize the multiply method of factory.
mainApp.service('CalcService',function(MathService){
this.square = function(a) {
return MathService.multiply(a,a);
}
});
...
服务
服务是一个单一的JavaScript包含了一组函数对象来执行某些任务。服务使用service()函数,然后注入到控制器的定义。
$scope.square = function() {
$scope.result = CalcService.square($scope.number);
}
});
提供者
提供者所使用的AngularJS内部创建过程中配置阶段的服务,工厂等(相AngularJS引导自身期间)。下面提到的脚本,可以用来创建,我们已经在前面创建MathService。提供者是一个特殊的工厂方法以及get()方法,用来返回值/服务/工厂。
常量
常量用于通过配置相位值考虑事实,值不能使用期间的配置阶段被传递。
例子
下面的例子将展示上述所有指令。
testAngularJS.html
AngularJS Dependency Injection
AngularJS Sample Application
Enter a number:
Result: {{result}}
值
值是简单的JavaScript对象,它是用来将值传递过程中的配置相位控制器。
$scope.square = function() {
$scope.result = CalcService.square($scope.number);
}
});
工厂
工厂是用于返回函数的值。它根据需求创造值,每当一个服务或控制器需要。它通常使用一个工厂函数来计算并返回对应值
//inject the factory "MathService" in a service to utilize the multiply method of factory.
mainApp.service('CalcService',function(MathService){
this.square = function(a) {
return MathService.multiply(a,a);
}
});
...
服务
服务是一个单一的JavaScript包含了一组函数对象来执行某些任务。服务使用service()函数,然后注入到控制器的定义。
$scope.square = function() {
$scope.result = CalcService.square($scope.number);
}
});
提供者
提供者所使用的AngularJS内部创建过程中配置阶段的服务,工厂等(相AngularJS引导自身期间)。下面提到的脚本,可以用来创建,我们已经在前面创建MathService。提供者是一个特殊的工厂方法以及get()方法,用来返回值/服务/工厂。
常量
常量用于通过配置相位值考虑事实,值不能使用期间的配置阶段被传递。
例子
下面的例子将展示上述所有指令。
testAngularJS.html
AngularJS Dependency Injection
AngularJS Sample Application
Enter a number:
Result: {{result}}
$scope.result = CalcService.square($scope.number);
}
});
mainApp.service('CalcService',function(MathService){
this.square = function(a) {
return MathService.multiply(a,a);
}
});
...
$scope.result = CalcService.square($scope.number);
}
});
例子
AngularJS Sample Application
Enter a number:
Result: {{result}}