当你有一个像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] 举报,一经查实,本站将立刻删除。