VictorTrapenok / signal.js

JS реализация сигналов и слотов

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Представляет функционал сигналов и слотов, позволяет обмениватся сообщениями между разными вкладками одного браузера в пределах одного домена и ещё отправляет сигналы в frame/iframe расположеные на странице и в родительский frame/iframe с помощью html 5 post message Api

Выключает режим отлатки

 signal.prototype.debug = false

Включает режим отлатки
 signal.prototype.debug = true

Подписываемся на сигнал
new signal().connect("site-add-tools",function(param){
    console.log(["site-add-tools-"+param.id,param]);
    $("#"+param.holder).html( $("#"+param.holder).html() + "Шаблоны")
})

Испускаем сигнал
new signal().emit("site-groups-add-tools",{
              id:"0",
              holder:"group0_tools",
              name:"0"
             });


Подписывает слот на сигнал, но позволяет указать численое значение приоритета вызова. Подписаные функции вызываются в соответсвии с заявленым приоритетом (выше приоритет раньше вызовется). Если есть две функции с одинаковым приоритетом то они фызываются в соответвии с порядком их добавления. Функции подписаные чере connect будут вызваны перед функциями подписаными через iconnect

priority Приоритет вызова
signal_name Имя сигнала
slot_function Функция вызваемая при вызове слота, должна иметь следующию сигнатуру function(param, signal_name){}

new new signal().iconnect("catalogControl.OpenObject",30, function(param, signal_name){ console.log([signal_name,param]) })

About

JS реализация сигналов и слотов


Languages

Language:JavaScript 100.0%