какой момент он отрабатывает
Проблема следующая, на родителе есть тригер, который меняется с true на false и запускает метод в дочернем компоненте через watch триггера.
Этот метод возвращает результат выполнения функции в родителя. Значение сохраняется в реактивную дату. Но это значение приходит как-то с опозданием.
Покажи код
Parent <div> <ChildComponent @getResult="setResult" /> <div></div> </ChildComponent> <div> data: { trigger: false, result: false, }, methods: { setResult(event) { this.result = event; } doSomething() { this.trigger = !this.trigger; if (!this.result) { return; } else { doSomethingElse() } } } Child props: { trigger: { type: Boolean, } } watch: { trigger() { result = doSomeThing(); this.$emit('getResult', result); } }
Есть вариант через ref обращаться к дочернему компоненту для публичных методов и данных, но хотелось без них
Если ты обязательно хочешь хранить метод в ребенке, а вызывать в родителе, то только через реф Но если там выполняется какая-то логика, а не просто ставится фокус в поле или что-то подобное, то лучше чуть лучше подумать над структурой компонентов
Обсуждают сегодня