Javascript 主干光环事件发射

Javascript 主干光环事件发射,javascript,backbone.js,aura.js,Javascript,Backbone.js,Aura.js,我最近开始学习并试用了一个简单的应用程序。我有三个小部件,比如A、B和C。现在A和B发布事件(使用sandbox.emit),C订阅事件(使用sandbox.on)。'A'发布“A.eventA”,B'发布“B.eventB”,比如说。我尝试从小部件A发布“B.eventB”,但它仍然有效。 那么,有没有一种方法可以让widget不能发布任何事件,除了自己的事件?(或者这是允许的/预期的行为?) 谢谢。你问的是安全问题。Aura的设计是有一个处理安全问题的正面。不要直接点击中介的publish,

我最近开始学习并试用了一个简单的应用程序。我有三个小部件,比如A、B和C。现在A和B发布事件(使用sandbox.emit),C订阅事件(使用sandbox.on)。'A'发布“A.eventA”,B'发布“B.eventB”,比如说。我尝试从小部件A发布“B.eventB”,但它仍然有效。 那么,有没有一种方法可以让widget不能发布任何事件,除了自己的事件?(或者这是允许的/预期的行为?)


谢谢。

你问的是安全问题。Aura的设计是有一个处理安全问题的正面。不要直接点击中介的
publish
,而是通过facade调用它。facade首先检查您是否具有发布权限

下面的示例显示了
subscribe
的安全性。您可以为发布使用类似的工具

定义([“./aura/mediator”、“./aura/permissions”],
功能(中介、权限){
var facade=facade |{};
facade.subscribe=函数(订阅者、频道、回调){
//注意:此处的处理权限/安全性是可选的
//可以删除权限检查
//直接使用中介。
if(permissions.validate(订阅者、频道)){
subscribe(通道、回调);
}
}
facade.publish=功能(通道){
调解人.发布(渠道);
}
返回正面;
});

谢谢您的回答。我也遇到了同样的方法。