VueJS Element и события

287
13 сентября 2017, 15:11

Всем привет. Изучаю vuejs. Использую библиотеку на его основе - Element Но есть проблема, с событиями. В компоненте FormBuilder есть событие form-builder-fields

this.$root.$emit('form-builder-fields', createElement, fields, fieldAttributes);

И есть компонент Image в котором я его ловлю

this.$root.$on('form-builder-fields', (createElement, fields, fieldAttributes) => {
        fields['image'] = () => {
            console.log('Image widget created successfully')
            return createElement('ElUpload', {
                props: {
                    action: '111222333',
                    onSuccess: this.successEvent(),
                    listType: 'picture-card',
                    fileList: []
                }
            }, [createElement('i', {
                attrs: {
                    class: 'el-icon-plus'
                },
            })])
        };
        return fields;
    });

Это два независимых компонента. С помощью createElement в компоненте Image я создаю стандартный компонент с библиотеки Element, вот он ElUpload. Проблема в том что событие onSuccess компонента ElUpload срабатывает когда происходит событие form-builder-fields. Т.е. код метода successEvent() выполняется сразу, не дожидаясь события onSuccess ну или onSuccess срабатывает сразу. Суть вопроса в том собственно, как это исправить ?

READ ALSO
Изменение атрибута по клику

Изменение атрибута по клику

Необходимо по клику менять картинкуТ

332
Math.random, Javascript. Что-то пошло не так [дубликат]

Math.random, Javascript. Что-то пошло не так [дубликат]

На данный вопрос уже ответили:

247
Местоположение ссылки на экране

Местоположение ссылки на экране

На веб-странице имеются ссылкиКак получить местоположение ссылки (отступ сверху и слева), пользуясь только инструментом разработчика? А затем...

227
“[what is a construction]”?

“[what is a construction]”?

ЗдравствуйтеОбъясните смысл конструкции var astr = “[object Array]” и вообще часть функции из книги С

217