【问题标题】:How to get content from vuex如何从 vuex 中获取内容
【发布时间】:2017-09-06 08:36:20
【问题描述】:

我将这个用VueJs + AdminLTE 项目制作的简单管理仪表板克隆到我的本地,到目前为止一切正常......但我目前正在努力找出如何从 vuex 获取存储状态,特别是从我修改过的this line of code到:

// if user loggedin
if(response.data && response.status == 200){
  this.$store.commit("USERNAME", data.username)
  this.$store.commit("TEL", data.tel)
  this.$store.commit('EMAIL', data.email)

  this.$router.push({ path: '/' })
}

一旦页面被重定向,我试图获取用户名、电话、电子邮件,但它不存在。

我做了console.log(this.$store) 我看到了很多内容,但没有看到用户信息

【问题讨论】:

    标签: vuejs2 vuex


    【解决方案1】:
    this.$store.commit("USERNAME", data.username)
    

    以上代码不会将用户名设置为商店。您需要在您的提交中调用相应的突变。例如

    this.$store.commit("SET_USER", data);
    

    它将相应的用户数据设置为商店中的“用户”状态。 现在您可以使用

    获取相应的用户信息
       `this.$store.state.user`
    

    上述调用将包含所有用户信息,如电子邮件、电话、用户名等

    【讨论】:

    • 只有一个问题,为什么需要突变?如果用户名突然更新,vuex 可以知道吗?比如model的直接数据绑定
    • 我们只能使用突变来改变状态值。 vuex有简单的文档vuex.vuejs.org/en/mutations.html
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-21
    相关资源
    最近更新 更多