Vue.js Vuex突变应该是功能性的,但是;“默认值”;是{}

Vue.js Vuex突变应该是功能性的,但是;“默认值”;是{},vue.js,vuex,vue-cli,Vue.js,Vuex,Vue Cli,我试图获取数据并将其插入到一个基本的html表中 <tr> <td v-for="item in dataTable" :key="item.id">{{item.threadName}}</td> </tr> 这就是我在actions.js中导入它的地方 import Vue from 'vue' export default { receiveAll (state, data) { data.forEach(

我试图获取数据并将其插入到一个基本的html表中

<tr>
    <td v-for="item in dataTable" :key="item.id">{{item.threadName}}</td>
</tr>
这就是我在actions.js中导入它的地方

import Vue from 'vue'

export default {
    receiveAll (state, data) {
        data.forEach(item => {
            return item
        })
    }
}
import * as api from '../api'

export const getData = ({ commit }) => {
    api.getData(data => {
        commit('receiveAll', data)
    })
}
'use strict';

module.export = [
    {
        id: 'm_1',
        threadID: 't_1',
        threadName: 'Jing and Bill',
        authorName: 'Bill',
        text: 'Hey Jing, want to give a Flux talk at ForwardJS?',
        timestamp: Date.now() - 99999
    },
    {
        id: 'm_2',
        threadID: 't_1',
        threadName: 'Jing and Bill',
        authorName: 'Bill',
        text: 'Seems like a pretty cool conference.',
        timestamp: Date.now() - 89999
    }
]
const data = require('./data')
const LATENCY = 16

export function getData (cb) {
    setTimeout(() => {
        cb(data)
    }, LATENCY)
}
data.js

import Vue from 'vue'

export default {
    receiveAll (state, data) {
        data.forEach(item => {
            return item
        })
    }
}
import * as api from '../api'

export const getData = ({ commit }) => {
    api.getData(data => {
        commit('receiveAll', data)
    })
}
'use strict';

module.export = [
    {
        id: 'm_1',
        threadID: 't_1',
        threadName: 'Jing and Bill',
        authorName: 'Bill',
        text: 'Hey Jing, want to give a Flux talk at ForwardJS?',
        timestamp: Date.now() - 99999
    },
    {
        id: 'm_2',
        threadID: 't_1',
        threadName: 'Jing and Bill',
        authorName: 'Bill',
        text: 'Seems like a pretty cool conference.',
        timestamp: Date.now() - 89999
    }
]
const data = require('./data')
const LATENCY = 16

export function getData (cb) {
    setTimeout(() => {
        cb(data)
    }, LATENCY)
}
api/index.js

import Vue from 'vue'

export default {
    receiveAll (state, data) {
        data.forEach(item => {
            return item
        })
    }
}
import * as api from '../api'

export const getData = ({ commit }) => {
    api.getData(data => {
        commit('receiveAll', data)
    })
}
'use strict';

module.export = [
    {
        id: 'm_1',
        threadID: 't_1',
        threadName: 'Jing and Bill',
        authorName: 'Bill',
        text: 'Hey Jing, want to give a Flux talk at ForwardJS?',
        timestamp: Date.now() - 99999
    },
    {
        id: 'm_2',
        threadID: 't_1',
        threadName: 'Jing and Bill',
        authorName: 'Bill',
        text: 'Seems like a pretty cool conference.',
        timestamp: Date.now() - 89999
    }
]
const data = require('./data')
const LATENCY = 16

export function getData (cb) {
    setTimeout(() => {
        cb(data)
    }, LATENCY)
}
这里是vuex商店

import Vue from 'vue'
import Vuex from 'vuex'
import * as actions from './actions'
import * as mutations from './mutations'

Vue.use(Vuex)

const state = {
    getData: []
}

export default new Vuex.Store({
    state,
    actions,
    mutations
})
在我的组件中,我只需启动两个v型模型,并计算

<script>
    import { mapActions } from 'vuex'

    export default {
        name: 'SearchTable',
        data () {
            return {
                search_query: '',
                search_sort: ''
            }
        },
        computed: mapActions({
            dataTable: 'getData'
        })
    }
</script>

从“vuex”导入{mapActions}
导出默认值{
名称:“SearchTable”,
数据(){
返回{
搜索查询:“”,
搜索\u排序:“”
}
},
计算:映射操作({
dataTable:'getData'
})
}
receiveAll(状态,数据){…
更改为
函数receiveAll(状态,数据){…

试试这个:
从“Vue”导入Vue
const receiveAll=(状态、数据)=>{
返回数据。forEach(项=>{
退货项目
})
}
导出默认值{
接收所有
}
receiveAll(状态,数据){…
更改为
函数receiveAll(状态,数据){…

试试这个:
从“Vue”导入Vue
const receiveAll=(状态、数据)=>{
返回数据。forEach(项=>{
退货项目
})
}
导出默认值{
接收所有

}
没错,变异是对象,它有方法。 这是这个例子的简称

 export default {
        receiveAll: function (state, data) {
            data.forEach(item => {
                state.getData.push(item)
            })
        }
   }
请看


您必须插入数据以说明何时将发生变异

export default {
    receiveAll (state, data) {
        data.forEach(item => {
            state.getData.push(item)
        })
    }
}

没错,变异是对象,它有方法。 这是这个例子的简称

 export default {
        receiveAll: function (state, data) {
            data.forEach(item => {
                state.getData.push(item)
            })
        }
   }
请看


您必须插入数据以说明何时将发生变异

export default {
    receiveAll (state, data) {
        data.forEach(item => {
            state.getData.push(item)
        })
    }
}

在您的vuex存储文件中,将导入更改为

import * as mutations from './mutations'

由于导出的是单个对象而不是单独的变量,

您无法从该文件导入所有(即
*
)。

在您的vuex存储文件中,将导入更改为

import * as mutations from './mutations'

由于导出的是单个对象而不是单独的变量,

您无法从文件中导入所有(aka
*
)。

检查突变对象的花括号是否正确闭合,这是一个简单的错误,但给出相同的错误消息

突变:{
GetAppID:(状态,有效负载)=>{
}

检查突变对象的花括号是否正确闭合,这是一个简单的错误,但给出相同的错误消息

突变:{
GetAppID:(状态,有效负载)=>{
}

仍然是同一个错误!!我想知道我所做的是否正确!!未捕获错误:[vuex]突变应该是函数,但“mutations.mtations”是{}。仍然是同一个错误!!我想知道我所做的是否正确!!未捕获错误:[vuex]突变应该是函数,但“mutations.mtations”是{}。