TypeError:无法读取未定义的属性“提交”

Posted

技术标签:

【中文标题】TypeError:无法读取未定义的属性“提交”【英文标题】:TypeError: Cannot read property 'commit' of undefined 【发布时间】:2021-07-31 14:58:32 【问题描述】:

请帮我解决这个问题,我正在使用 vue js v2 并且我也是新手,但是我遇到了一些无法读取提交的问题。当我通过保护路由登录并重定向到我的仪表板时

谁能帮帮我?

store.js

import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

const store = new Vuex.Store(
    state:
        authenticated: false
    ,
    mutations: 
        setAuthentication(state, status)
            state.authenticated = status
        
    ,
)

export default store

方法

methods: 
       login()
           axios.post('/api/v1/login', this.form)
           .then(response =>
            //    this.$router.push('dashboard')
                  this.$store.commit('setAuthentication', true);
                  this.$router.replace(name: 'dashboard')
           )

       
   

【问题讨论】:

【参考方案1】:

试试

$store.commit('fileName/mutatorName', value);

你的情况

$store.commit('store/setAuthentication', true);

【讨论】:

但是仍然无法正常工作@Нигилист Джордан【参考方案2】:

试试这个。

    import Vue from 'vue'
    import Vuex from 'vuex'
    Vue.use(Vuex)
    
    export default new Vuex.Store(
        state :  
            authenticated: false, 
        , 
        mutations: 
            setAuthentication(state, data) 
                state.authenticated= data;
              ,
        , 
    )


this.$store.commit('setAuthentication',true);

【讨论】:

以上是关于TypeError:无法读取未定义的属性“提交”的主要内容,如果未能解决你的问题,请参考以下文章

渲染中的错误:“TypeError:无法读取未定义的属性'_t'”在使用 Jest 的单元测试中

TypeError:无法读取未定义的属性“文件”

TypeError:无法读取未定义的属性“分支”

TypeError:无法读取未定义的属性“加载”

我收到一个错误 [Vue 警告]:渲染错误:“TypeError:无法读取未定义的属性‘名称’”

REACT JS:未处理的拒绝(TypeError):无法读取未定义的属性“数据”