zyj12138 2021-06-07 16:22 采纳率: 0%
浏览 630
已结题

window.open打开新页面后vuex使用mapgetter获取不到值了

原始页面使用了mapmutations是可以getter值的

因为要打开新窗口页面,于是resolve配合window.open,新页面使用mapgetters却是空数据

贴上modules中的代码:


 

const state = {

  myLevels: [],

  myStatus:[]

}

 

const actions = {

  getLevelData({ commit }, payload) {

    // console.log(payload, 'payload')

    commit('LEVEL_DATA', payload)

  },

getStatusData({ commit }, payload) {

    // console.log(payload, 'payload')

    commit('STATUS_DATA', payload)

  },

}

 

const mutations = {

  LEVEL_DATA(state, payload) {

    // console.log(payload, 'payload')

    state.myLevels = payload

  },

  STATUS_DATA(state, payload) {

    state.myStatus = payload

  }

}

 

const getters = {

  myLevels: state => {

    return state.myLevels

  },

  myStatus: state => {

    return state.myStatus

  }

 

}

export default {

  // name: 'designRequirment',

  state,

  actions,

  mutations,

  getters

}

求助

  • 写回答

2条回答 默认 最新

  • CV戰士 2021-06-08 11:22
    关注

    建议结合sessionStorage存储,这样数据就不会丢失了,

    JSON.parse(sessionStorage.getItem("***")),
    sessionStorage.setItem("***", JSON.stringify(***))

    ,获取和设置别漏了JSON.parse, JSON.stringify转换一下,不然拿到的数据就是【object】了

    评论

报告相同问题?