Vue2 - 为什么store.commit将有效负载从字符串更改为对象

时间:2017-12-23 23:36:07

标签: vuejs2

我是Vue的新手并且正在努力。

我有这个方法

            itemClick() {
                let item = this.name;
                console.log( item );
                store.commit( 'updateSelectedItems', item );
            },

和这个突变

        updateSelectedItems( items ) {
            console.log( items );

            store.state.selectedItems.splice( 0 );
            store.state.selectedItems.push( items );
        }

方法console.log正确输出名称(它来自props)。但是,从updateSelectedItems变异日志中,它会输出一个包含我所有状态的对象。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

这是因为突变被赋予了状态作为他们的第一个参数。然后应将有效负载作为变量声明中的第二个参数(如:updateSelectedItems(state, item))。

(有关详细信息,请参阅文档:https://vuex.vuejs.org/en/mutations.html