зачем синтаксис распространения в начале методов и как это в данном случае работает?

как он работает spread оператор тут ,зачем он в начале методов ,в курсе по vue обходятся без него ,зачем он тут понадобился?

export default {
            name: 'App',
            data() {
                return {
                    activeItemId: null,
                }
            },
            components: {
                ViewDataList,
                ViewDataItem
            },
            computed: {
                ...mapGetters(['loadStatus', 'dataItemInfo', 'currentItem', 'secondStep'])
            },
            methods: {
                ...mapActions(['loadDataItemInfo', 'moveBack']),
        
                async nextStep() {
                    this.loadDataItemInfo();
                }
            }
        }
        </script>

Ответы (1 шт):

Автор решения: Grundy

mapGetters и аналогичные функции возвращают объект. Чтобы встроить полученный объект и используется spread оператор

Например:

mapActions возвращает следующий объект

{
    'loadDataItemInfo': function(){...}, 
    'moveBack': function(){...}
}

Если вставлять результат без spread оператора вид объекта будет следующий

methods: {
    actions:     {
        'loadDataItemInfo': function(){...}, 
        'moveBack': function(){...}
    },

    async nextStep() {
        this.loadDataItemInfo();
    }
}

Для того, чтобы получить более плоскую структуру и используют spread оператор, встраивающий свойства одного объекта в другой

methods: {
    'loadDataItemInfo': function(){...}, 
    'moveBack': function(){...},
    async nextStep() {
        this.loadDataItemInfo();
    }
}
→ Ссылка