击倒内部/外部模块!==短暂/单身的生活方式

Knockout internal/external modules !== transient/singleton lifestyles?

本文关键字:短暂 单身 生活方式 模块 内部 外部      更新时间:2023-09-26

当使用IoC容器时,我可以指定当需要给定的依赖项时,每次都传入一个新对象,或者传入的对象始终是同一个实例。

我曾认为内部和外部模块分别提供该功能,但现在我不太确定。此外,我发现在Knockout中使用"内部"模块时,我的自定义绑定接收"undefined"作为viewModel参数。

我如何在单例和瞬态与外部模块之间进行选择?

我在TypeScript中使用Durandal (Knockout, RequireJS)

"undefined"作为viewModel参数,当使用"internal"模块

这是一个与JavaScript发出排序有关的常见错误。更多信息请访问:https://github.com/TypeStrong/atom-typescript/blob/master/docs/out.md

当使用IoC容器时,我可以指定当需要给定的依赖项时,每次都传入一个新对象,或者传入的对象总是相同的实例。

外部模块系统与IoC容器不同。模块是一个单例,你总是得到相同的实例。如果你想有不同的实例,让你的模块导出一个函数(它可以作为你实际想要的对象的工厂)。