亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

vuex傳值問題

vuex傳值問題

波斯汪 2018-09-02 07:54:52
練習使用簡單的vuex來傳值store.js:const store = new Vuex.Store({   // 定義狀態  state: {     headImg: ""   },   mutations:{     newImg(state,msg){      state.headImg=msg;     }   } })傳值:this.$store.commit("newImg",val.HeadImgUrl);接收:<template>   <div>     <img :src="msg" alt="">   </div> </template> <script>   export default {       name: 'detail',     data () {           return {                msg: ''       }     },     created(){           this.msg=this.imgSrc;     },         computed: {       imgSrc () {               return this.$store.state.headImg; //vuex接受值       }     }</script>問題是在刷新的時候這個值就沒了,怎么讓它在刷新完頁面后還存在這個值呢?(剛學vue沒多久,還請指點)
查看完整描述

2 回答

?
慕沐林林

TA貢獻2016條經驗 獲得超9個贊

this.$store.commit("newImg",val.HeadImgUrl);這個方法寫到

created(){
  this.$store.commit("newImg",val.HeadImgUrl);  
  this.msg=this.imgSrc;
},


查看完整回答
反對 回復 2018-09-09
?
蕭十郎

TA貢獻1815條經驗 獲得超13個贊

store內的狀態刷新后會重新初始化,可以通過本地存儲解決

const store = new Vuex.Store({

  // 定義狀態

  state: {

    headImg: JSON.parse(sessionStorage.getItem('headImg')) || ""

  },

  mutations:{

    newImg(state,msg){

      sessionStorage.setItem('headImg', JSON.stringify(msg))

      state.headImg=msg;

    }

  }

})


查看完整回答
反對 回復 2018-09-09
  • 2 回答
  • 0 關注
  • 1310 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號