微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – 多个文件中的工厂方法Angular JS

当你有一个像4个相关方法的工厂时,最好的做法是什么,每个方法都很长(200行代码),你想避免拥有800行代码的庞大文件

一种解决方案是在同一模块下创建4个工厂,每个工厂暴露一个方法并在其自己的文件中.然后将它们全部注入需要它们的控制器中.

有更好的解决方案吗?我想创建一次Factory,然后添加方法就像我使用模块模式进行模块扩充一样.然后我只需要注入一次工厂并使其所有方法都可用.

解决方法

您还可以使用旧的vanilla js样式安排代码,然后在服务中访问这些库,如下所示:

var Mirko = { };

Mirko.FunService = {
  getAllSomething : function (p1,p2) {
  },...
};

angular.module('myModule').factory('BigService',function(){
  return {
    methodone : Mirko.getAllSomething,...
  };
});

您将最终得到一个可以在角度应用程序范围之外访问的对象Mirko,但它绝不会与您希望在应用程序中使用的其他外部API(不是为角度编写)有所不同.您处理自己的“外部”api的方式可以通过oldschool时尚方式完成,每个“类”一个文件,例如’FunService’.

它可能不是最漂亮的解决方案,但它将是一个简单的抽象.

只是说……

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐