在我的插件中,我需要能够在插件加载后触发事件 我不想使用内置机制(在对象参数中添加它),因为我需要能够控制与事件触发一起发送的参数。
问题在于,当我尝试在onPluginReady
中触发事件时,它就不会触发..在调试时我注意到m_proxies
为空(在JSAPIImpl::FireEvent
中),但如果我尝试使用相同的代码在onMouseDown
方法中触发事件,那么效果会很好。
这是我的createJSAPI代码:
FB::JSAPIPtr plugin::createJSAPI()
{
this->jsApi = JSApiPtr(new pluginAPI(FB::ptr_cast<plugin>(shared_from_this()), m_host));
return this->jsApi;
}
这是onPluginReady代码:
void plugin::onPluginReady()
{
this->getRootJSAPI();
this->jsApi->fireMyEvent(this->myId);
}
并且事件未被触发,但这样做:
bool plugin::onMouseDown(FB::MouseDownEvent *evt, FB::PluginWindow *)
{
this->jsApi->fireMyEvent(this->myId);
return false;
}
为什么?
感谢。
答案 0 :(得分:1)
编辑以澄清评论:
回调将提供一个参数,其中包含对根JSAPI对象的引用。请注意,在这种情况下,不是对象或embed标记,只是JSAPI对象,因此您可以使用任何方法或属性。