Методы пользовательских событий

Доступ из любой точки приложения осуществляется по имени пользовательского события: this.rootLink.eventProps["emiter-имя-события"]

Доступ из свойства - слушателя события осуществляется: this.emiter

  • .emit() - вызывает событие для всех слушателей;

  • .setEventProp("новые данные") - вызывает событие для всех слушателей и меняет переменную this.rootLink.eventProps["emiter-имя-события"].prop на новые данные, получить новые данные в слушателе события можно с помощью this.emiter.prop или this.emiter.getEventProp();

  • .getEventProp() - получает данные пользовательского события;

Слушателями пользовательских событий могут быть, как свойства контейнера , так и свойства массива;

Эмитеру пользовательского события можно добавить поведение - метод который будет срабатывать пред вызовом emit для всех слушетелей.

  • behavior() метод добавляется к эмитеру событий, если возвращает false событие не будет вызвано, пример использования:
  eventEmiters: { 

 //событие для смены типа навигации

        ["emiter-navigation-type"] : {
            prop: "",

            behavior: function(){
                //если ширина экрана меньше 600 px событие не сработает
                if(window.innerWidth < 600 && this.prop == "top-menu")return false;

                this.rootLink.stateProperties.NAVIGATION_TYPE = this.prop;              
                return true;
            }

        },
},