Обновить данные родителя из потомка

Модификатор sync

Потомок

props: {
	data: {}
},
mounted() {
	this.$emit('update:data', {id: 15, name: 'change data here'})
},

Родитель:

<station-info-map :data.sync="data"/>
<script>
	data() {
		return {
			data: {}
		};
	},
	watch: {
		data(val) {
			console.log('StationInfo -> watch -> data');
			console.log('data=', val);
		}
	}
</script>

Обновление через функцию

Потомок

this.$emit('stationChangeMethod', {id: 15, name: 'work here'});

Родитель

<station-info-map @stationChangeMethod="stationChangeMethod"/>
<script>
	methods: {
        stationChangeMethod (data) {
            console.log('StationInfo -> methods -> stationChangeMethod 3', data);
        }
    },
</script>

Вызов события на родителе

Потомок

mounted() {
	this.$parent.$emit('stationChange', {id: 15, name: 'work here'});
},

Родитель

created() {
	this.$on('stationChange', (station) => {
		console.log('StationInfo -> mounted -> stationChange', station);
	});
},

Вызов события на root

Потомок

mounted() {
	this.$root.$emit('stationChange', {id: 15, name: 'work here'});
},

Родитель

created() {
	this.$root.$on('stationChange', (station) => {
		console.log('1 StationInfo -> mounted -> stationChange', station);
	});
},