这两种定义工厂的方式有什么区别

德穆塔德
.factory("user", userService);
  function userService($q, $http) { 
    function User (){
    //....
    }
    return User;
  }

或者

.factory("User", ["$q", "$http", function ($q, $http) {
  var User = {
  //....
  }
  return User;
}])

根据情况(或者更确切地说,取决于作者),我经常看到两者,但我已经想知道很长时间了(自从我开始学习 Angular),是什么让它与众不同,以及我是否可以使用一个或另一个不改变任何东西。
我通常使用第一个并遵循逻辑,因为我发现它更容易,并且因为我对第二个感到困惑。我可能犯了错误,但这就是我寻求帮助的原因。
谢谢 !

悉达多·潘迪

您问题中的第二个代码片段是我建议您用于所有 angularjs 服务的代码片段。

Angular 框架提供了开箱即用的依赖注入 (DI) 功能,可在定义服务、指令、过滤器、动画等组件或为模块提供运行和配置块时使用。

如果您在 angular 应用程序中定义依赖项而不使用字符串数组,那么您就做错了。这种注册依赖项的方法将非常适合JavaScript源文件的非最小版本。

但是,如果您打算缩小用于生产的文件(每个人都必须这样做),那么所有这些(依赖项)参数都将更改为真正随机的内容,而 angular 将无法映射到任何已注册的组件。所以最终,框架会抛出一个错误。

为了避免这个错误,可以确保始终使用字符串类型的数组来指示依赖项。更详细地阅读本文如果你是你自己,那么你可以记住这个提示。但是,如果在团队中工作,最好使用以下选项进行配置,以便团队中的每个人都遵循这一点。如果没有,那么他们将遇到错误。

我建议您使用严格的 DI 模式。

如何启用严格模式?可以使用下面提到的两个选项启用此模式。

选项1:

<div ng-app="myApp" ng-strict-di>
  <!-- your app here -->
</div>

选项 2:

angular.bootstrap(document, ['myApp'], {
  strictDi: true
});

在我的博客文章中了解为什么严格 DI 模式对您的 AngularJS 应用程序有益。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

这两种在python中定义列表的方式有什么区别?

来自分类Dev

这两种在python中定义列表的方式有什么区别?

来自分类Dev

这两种异步方法有什么区别?

来自分类Dev

这两种递归方法有什么区别

来自分类Dev

这两种PhysicsVector方法有什么区别?

来自分类Dev

这两种实现之间有什么区别?

来自分类Dev

这两种情况有什么区别?

来自分类Dev

这两种结构有什么区别

来自分类Dev

这两种函数声明有什么区别?

来自分类Dev

这两种语法有什么区别?

来自分类Dev

这两种 Scala 模式有什么区别?

来自分类Dev

这两种做法有什么区别:

来自分类Dev

这两种集群配置有什么区别?

来自分类Dev

这两种创建对象文字的不同方式有什么区别

来自分类Dev

这两种调用基类副本分配的方式有什么区别?

来自分类Dev

递归中这两种方式有什么区别?

来自分类Dev

这两种方式创建对象有什么区别?

来自分类Dev

这两种声明函数的方式有什么区别?

来自分类Dev

这两种执行TypeScript方法的方式有什么区别?

来自分类Dev

这两种编写结构的方式有什么区别?

来自分类Dev

这两种在C ++中实现函数的方式有什么区别?

来自分类Dev

这两种在vb .Net中进行编码的方式有什么区别

来自分类Dev

这两种在Keras中添加神经网络层的方式有什么区别?

来自分类Dev

这两种初始化String的方式有什么区别

来自分类Dev

这两种在TypeScript中声明映射的方式有什么区别?

来自分类Dev

这两种在Node.js中连接到MongoDB的方式有什么区别

来自分类Dev

这两种为Rust通道克隆发件人的方式有什么区别?

来自分类Dev

这两种初始化HashMap的方式有什么区别?

来自分类Dev

这两种用JavaScript编写原型函数的方式有什么区别

Related 相关文章

  1. 1

    这两种在python中定义列表的方式有什么区别?

  2. 2

    这两种在python中定义列表的方式有什么区别?

  3. 3

    这两种异步方法有什么区别?

  4. 4

    这两种递归方法有什么区别

  5. 5

    这两种PhysicsVector方法有什么区别?

  6. 6

    这两种实现之间有什么区别?

  7. 7

    这两种情况有什么区别?

  8. 8

    这两种结构有什么区别

  9. 9

    这两种函数声明有什么区别?

  10. 10

    这两种语法有什么区别?

  11. 11

    这两种 Scala 模式有什么区别?

  12. 12

    这两种做法有什么区别:

  13. 13

    这两种集群配置有什么区别?

  14. 14

    这两种创建对象文字的不同方式有什么区别

  15. 15

    这两种调用基类副本分配的方式有什么区别?

  16. 16

    递归中这两种方式有什么区别?

  17. 17

    这两种方式创建对象有什么区别?

  18. 18

    这两种声明函数的方式有什么区别?

  19. 19

    这两种执行TypeScript方法的方式有什么区别?

  20. 20

    这两种编写结构的方式有什么区别?

  21. 21

    这两种在C ++中实现函数的方式有什么区别?

  22. 22

    这两种在vb .Net中进行编码的方式有什么区别

  23. 23

    这两种在Keras中添加神经网络层的方式有什么区别?

  24. 24

    这两种初始化String的方式有什么区别

  25. 25

    这两种在TypeScript中声明映射的方式有什么区别?

  26. 26

    这两种在Node.js中连接到MongoDB的方式有什么区别

  27. 27

    这两种为Rust通道克隆发件人的方式有什么区别?

  28. 28

    这两种初始化HashMap的方式有什么区别?

  29. 29

    这两种用JavaScript编写原型函数的方式有什么区别

热门标签

归档