В SDK есть 2 вида событий:
- встроенные события, определенные в API SDK
- пользовательские события, которые определяет разработчик дополнения.
Чтобы гарантировать, что если вы определите свое собственное событие с именем "show", оно не будет конфликтовать со встроенным "show", всеми пользовательскими событиями - и только пользовательскими событиями -находятся внутри свойства "port".
Событие "show", которое вы здесь слушаете, является встроенным событием, поэтому вы не должны использовать "port" для его прослушивания.Поэтому следующий код должен делать то, что вы хотите:
var panel = require("panel").Panel({
});
panel.on("show", function() {
console.log("panel is showing");
});
panel.show();