【发布时间】:2015-08-29 08:47:51
【问题描述】:
在我的应用中,我有一个全球玩家。在 shell 模块中,我需要播放器的视图模型,因为我想知道播放器是否正在播放,如果是,我将一个类添加到应用程序的容器(在 shell 中)。
问题是我还需要来自播放器 VM 的 shell,因为我在 shell 中的应用程序中使用了一些功能。
但是当从外壳请求播放器模块时,从播放器请求外壳返回undefined。如果我不需要播放器,则shell正常通过。
shell.js
define(['viewmodels/player'], function(player) {
return {
player: player
}
})
player.js
define(['viewmodels/shell'], function(shell) {
console.log('shell:', shell) // undefined
})
我不知道发生了什么。
【问题讨论】:
-
这确实会产生循环依赖,并打破 require!请参阅下面的答案!
标签: javascript durandal durandal-2.0