0
我是新来的主干。我一直在寻找它已在Saiku中使用。我遇到了下面的线。Backbone.js和Saiku中的触发事件
Saiku.session.trigger('workspace:new', { workspace: this });
'workspace:new'是一个事件吗?主干触发器如何将其识别为事件?
我是新来的主干。我一直在寻找它已在Saiku中使用。我遇到了下面的线。Backbone.js和Saiku中的触发事件
Saiku.session.trigger('workspace:new', { workspace: this });
'workspace:new'是一个事件吗?主干触发器如何将其识别为事件?
简短回答:是的,workspace:new
是一个事件。
骨干有几个内置的事件,你可以听。但是你也可以触发自定义事件,就像这段代码所做的那样。该事件仅由一个字符串标识(在这种情况下,"workspace:new"
)。当您从Backbone's Event Module继承的对象上调用trigger
时,该事件“发生”。作为trigger
的第二个参数,您可以传递一些关于事件的数据,任何您想要从事件处理函数中访问的数据。
然后,通常在其他地方,会有代码等待该事件发生。这是通过调用.on
或.listenTo
方法设置的。
这里有一个基本的例子:(看到它在行动on JSBin)
var model = new Backbone.Model();
model.on('my-event', function (data) {
console.log("my-event happened!");
console.log(data);
});
model.trigger('my-event');
model.trigger('my-event', 'some-data');
model.trigger('my-event', { anything: 'works' });
感谢您的回答,这是有帮助! – SDJ