1

在角度文档中

使用 $injector 注册一个值服务,例如字符串、数字、数组、对象或函数。这是注册服务的缩写,其提供者的 $get 属性是一个工厂函数,不接受任何参数并返回值 service

在粗体文本中$get property is a factory function that takes no arguments,我知道$geta 中的函数将在需要创建实例时angular providers调用,并且它必须在提供程序中具有函数。$injector.invoke()$get

我的问题是关于 的潜在含义是function that takes no arguments什么?

如果有人可以通过将两者与上述文档引用进行比较来描述angular values service&的内部部分,将不胜感激。factory service谢谢。

4

1 回答 1

0

这意味着 Angular 正在创建一个提供程序,就像任何其他提供程序一样,它返回您使用module.value('name', value);. 当构建值不涉及逻辑并且不依赖于其他一些服务时,这种类型的提供者是合适的。

比较,产生相同的结果:


angular.module('myApp')
    .value('baseUrl', 'http://localhost:8080/');

angular.module('myApp')
    .factory('baseUrl', baseUrlFactory);

function baseUrlFactory(){
    return 'http://localhost:8080/';
}
于 2015-08-31T18:19:38.973 回答