小部件中的杜兰达尔事件

Durandal Event in widgets

本文关键字:事件 杜兰达 小部      更新时间:2023-09-26

所以我还有另一个DurandalJS问题。所以我有一些几乎独立的小部件。它们根据当前用户是否登录来呈现或隐藏自己,例如,我有一个显示当前用户名的小部件,另一个显示当前用户的一些设置。"当前用户"是存储在本地存储中的值,因此每个人基本上都知道从那里获取它并尽自己的一份力量。

我有一个安全模块,当用户登录和注销时,它会触发一个事件。

我的所有小部件(包括 shell)都需要此安全模块,并且它们都处理事件。现在我知道该事件正在工作,因为 shell 的事件处理程序被调用,但小部件从未看到该事件,甚至认为它们显示在 shell 中。

但是,如果我对页面进行硬刷新(无论用户是登录还是注销),所有小部件都会正确呈现,因此我知道小部件知道该怎么做。我做错了吗?如果是,我该如何最好地去做。

谢谢

问题是我从我的小部件返回单例。我不知道有什么区别,但当我返回单身人士时,我从未得到过这些事件。Durandal 希望小部件是构造函数,以便它可以实例化多个相同类型的小部件,如下所示

ViewModel.js 是一个函数导出模块,将用作所有小部件代码的位置。它将绑定到通过组合模块由小部件基础设施查看.html。