国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 語(yǔ)言 > JavaScript > 正文

Vue中保存用戶登錄狀態(tài)實(shí)例代碼

2024-05-06 15:16:13
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

首先我們假設(shè),這里的登錄組件(register.vue)是App.vue組件的子組件,是通過(guò)路由進(jìn)入登錄組件的。

登錄組件中用戶點(diǎn)擊登錄后,后臺(tái)會(huì)傳過(guò)來(lái)一個(gè)用戶名,我的App.vue組件中需要拿到這個(gè)用戶名,并將上面的“登錄注冊(cè)”字樣變?yōu)椤坝脩裘薄?

為了保證用戶刷新后用戶名不會(huì)消失,這里我用到了sessionStorage

代碼如下:

register.vue中用戶點(diǎn)擊登錄觸發(fā)signIn方法

   signIn(){    this.formData = $(".form").serialize();    var that = this;    this.$http.get("/api/user", this.formData)     .then(response => {      that.userName = response.data.data.user.userName;      that.userHead = response.data.data.userHead;      that.$emit('userSignIn', that.userName);     })     .catch(error => {      console.log(error);     });   }

這里為了測(cè)試我直接mock的數(shù)據(jù),真實(shí)情況應(yīng)該是this.$http.post

這里的重點(diǎn)是那句

 that.$emit('userSignIn', that.userName);

向父組件(App.vue)傳值

App.vue代碼HTML

<keep-alive>   <router-view @userSignIn="userSignIn"></router-view></keep-alive>

App.vue代碼JS

export default { data(){  return{   userName: sessionStorage.userName  } }, methods:{  //子組件(register)將用戶名傳過(guò)來(lái)  userSignIn(userName){   sessionStorage.userName = userName;   this.userName = sessionStorage.userName;  } }}

這樣父組件就可以使用用戶名,保持了登錄狀態(tài),并且因?yàn)槭褂昧藄essionStorage,刷新頁(yè)面也可以保持。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持錯(cuò)新站長(zhǎng)站。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 三穗县| 漳平市| 定远县| 常山县| 乐业县| 图木舒克市| 泌阳县| 嘉荫县| 来宾市| 张家川| 沭阳县| 阳春市| 忻州市| 油尖旺区| 上林县| 保亭| 黎平县| 收藏| 印江| 漳浦县| 石景山区| 蓝山县| 嵩明县| 虹口区| 建湖县| 化州市| 达州市| 荆州市| 珲春市| 正安县| 华蓥市| 湖南省| 宜阳县| 政和县| 酉阳| 东安县| 新民市| 罗田县| 双鸭山市| 龙胜| 五家渠市|