Javascript 实例化角度服务-我还可以用什么方式重写它?

Javascript 实例化角度服务-我还可以用什么方式重写它?,javascript,angularjs,convention,Javascript,Angularjs,Convention,对于我正在从事的一个项目,我写的其中一件事是为一个应用程序提供一个实例服务 你可以看到它的行动普朗克 我的代码问题更多的是一个架构和最佳实践问题。具体来说,我想我已经写了一个角度反模式 服务(如calendarSvc)是单例的,但是我通过使工厂返回构造函数来明确地规避这一点 也就是说,在一个页面上存在1-n个日历是一个具体的业务需求。这段代码是管理单个日历所需代码的有效重构,因此它肯定有助于使代码更加枯燥 问题:这个实例化服务还有哪些有效的替代方案,可以让我根据需要指定可重用日历对象的实例,但不

对于我正在从事的一个项目,我写的其中一件事是为一个应用程序提供一个实例服务

你可以看到它的行动普朗克

我的代码问题更多的是一个架构和最佳实践问题。具体来说,我想我已经写了一个角度反模式

服务(如
calendarSvc
)是单例的,但是我通过使工厂返回构造函数来明确地规避这一点

也就是说,在一个页面上存在1-n个日历是一个具体的业务需求。这段代码是管理单个日历所需代码的有效重构,因此它肯定有助于使代码更加枯燥


问题:这个实例化服务还有哪些有效的替代方案,可以让我根据需要指定可重用日历对象的实例,但不会绕过管理代码的角度?

您所做的不是反模式,而是最佳实践! 请参阅此样式指南页面,例如:

你没有绕过棱角分明的道路。函数的思想是返回构造函数的可能性。创建服务的另一个替代方法是模块的-method,它将使用
new
关键字自动实例化您的服务


另一个StackOverflow答案作为参考:

可能更适合codeReview或程序员,虽然版主可以对我的问题做他们喜欢的事情,但我认为这不是一个代码审查问题,因为这是我对自己代码的质疑。我不确定这是否是一个恰当的评价。至于它是否属于程序员堆栈,StackOverflow上有很多东西可以被认为属于程序员堆栈。老实说,我不确定StackOverflow从哪里开始,程序员也不确定堆栈是否正确开始。您所做的不是反模式,而是最佳实践!另请参见本页的示例:。工厂的想法是返回构造函数的可能性。@DanEEStar如果你认为答案是我是正确的,请随意回答@Andrew Gray,“我不确定StackOverflow是从哪里开始的,程序员的堆栈是从哪里开始的”。我同意这一点。