Javascript AngularJS的工厂设计模式,这是正确的方法吗?

Javascript AngularJS的工厂设计模式,这是正确的方法吗?,javascript,jquery,angularjs,design-patterns,Javascript,Jquery,Angularjs,Design Patterns,我想在AngularJS中实现工厂设计模式,这样就可以创建正确类型的对象,但我不确定这是否适合整个框架。假设AngularJS应用程序、服装和电子书中有不同类型的产品: Product | | Ebook Clothing 我想根据一些条件实例化对象的具体类型,例如从数据库返回的类型字段,我应该这样做吗 // pseudo-code ProductController Factory.createObject(type) 如果可以的话,在控制器中存储工厂函数可以吗?我应

我想在AngularJS中实现工厂设计模式,这样就可以创建正确类型的对象,但我不确定这是否适合整个框架。假设AngularJS应用程序、服装和电子书中有不同类型的产品:

   Product
    |   |
Ebook  Clothing
我想根据一些条件实例化对象的具体类型,例如从数据库返回的类型字段,我应该这样做吗

// pseudo-code
ProductController
 Factory.createObject(type)

如果可以的话,在控制器中存储工厂函数可以吗?我应该在哪里存储表示产品的具体构造函数对象(比如函数Ebook())

我认为您应该将工厂注入控制器

这些可能会让您了解如何组织:


是的,我也意识到,工厂方法应该在工厂内部。但是,仍然困扰我的是如何处理自定义类型(电子书、产品)。看来你的第二个链接提供了一些答案,谢谢。