欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue實戰(zhàn)之vue登錄驗證的實現(xiàn)代碼

 更新時間:2017年10月31日 10:14:05   作者:殺手  
本篇文章主要介紹了Vue實戰(zhàn)之vue登錄的實現(xiàn)代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

最近一直在擼一個給大學生新生用的產(chǎn)品,在擼的時候有時候會發(fā)現(xiàn)自己力不從心,是不是我的能力下降,是不是我該放棄我的最熱愛的事業(yè)了?這對我的心靈造成了巨大的傷害,所以我決定向蒼老師起誓一定練好我這雙手——好好寫代碼(想多的同學趕緊去面壁5秒鐘再過來往下看)~~~

我做的這個產(chǎn)品是課堂在線編程教學工具,由于涉及到商業(yè)問題,這里就不能和大家分享了,但是我可以把里面我認為很牛(zhuang)X(bi)的技術和大家分享分享啊。

如果你覺得我寫的很 low的話歡迎加入igeekbar裙里來噴我啊,我在那里等你啊,我相信贊美會有很多故事喲。哈哈,廢話不多說了,進入干貨分享啦~~~

先從登錄分享吧,登錄是我寫完項目后加上的,一開始沒有考慮到登錄問題,后來加的,看了一些人分享的登錄,感覺都太牛逼了(主要我理解能力差看不懂)。最后自己搞了一套。

使用的技術:

  1. vue
  2. vue-router
  3. vuex

首先明確的一點vue是一個寫但頁面的框架,以前在做登錄的時候,也許是后端來控制登錄的狀態(tài),把登陸的信息會放在cookie里。前端也可以做登錄驗證的,這主要是基于但頁面引入路由的功能得以實現(xiàn)的。

在vue-router里有個鉤子函數(shù) beforeEach (導航守衛(wèi))多霸氣的名字,故名YY就是這是我家沒我的邀請名片都給我滾蛋,還想過來和我一起看蒼老師。beforeEach 接受三個參數(shù)(to, from, next)分別是to: 小伙要去哪里, from: 小伙從那里來, next: 美女您請進,小心路滑啊。姑且你們認為我寫的很形象啊,如果你感到不服去看 文檔 ??!

理解里 beforeEach 那我們就可以區(qū)搞事情了?;镜乃悸肥牵?/p>

  1. 我要從router的信息里面拿到 meta 用戶的源信息,如果沒有就讓這屌絲滾蛋,收拾帥氣點再來(也就是去登錄)
  2. 如果沒有源信息的話,就等跳到 igeekbar 裙里來瞅瞅,拿到入場圈(也就是登錄后拿到了返回結果并存在router的源信息中,用于之后路由跳轉的驗證)

寫到這里突然感覺這貌似誰都懂的啊,不管了寫這么多,就當你是小白吧(哈哈哈)

下面直接上代碼:

在 router.js 路由中添加一下代碼

// router.js
router.beforeEach((to, from, next) => {
 if (!to.meta.user) {
  // todo 請求接口獲取數(shù)據(jù)
  loadUserData().then(user => {
   // 存放源信息
   to.meta.user = user
   // 存在 vuex 中
   store.state.user = user
   if(user){
    next()
   }else{
    next({
     path: '/'
    })
   }
  })
 } else {
  next()
 }
})

統(tǒng)一處理接口的文件api.js

// api.js
import axios from 'axios'

// 封裝ajax 的 fetch
export let fetch = (method, url, data, forceLogin = true) => {
 return new Promise((resolve, reject) => {
  axios({
   ...data,
   method: method,
   url: url
  }).then(response => {
   resolve(response.data)
  }).catch(err => {
   reject(err)
  })
 })
}

// 獲取用戶信息
export let loadUserData = () => {
 return new Promise((resolve, reject) => {
  let user = null
  let cacheKey = 'authUserJsonStr'
  let authUserJsonStr = sessionStorage.getItem(cacheKey)
  if (authUserJsonStr) {
   user = JSON.parse(sessionStorage.getItem(cacheKey))
   resolve(user)
  } else {
   fetch('GET', '/api/auth_info/', {}, false).then((data) => {
    user = data
    sessionStorage.setItem(cacheKey, JSON.stringify(user))
    resolve(user)
   }).catch(() => {
    resolve(null)
   })
  }
 })
}

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 解決element-ui?el-drawer抽屜el-dialog彈框關閉優(yōu)化demo

    解決element-ui?el-drawer抽屜el-dialog彈框關閉優(yōu)化demo

    這篇文章主要為大家介紹了解決element-ui?el-drawer抽屜el-dialog彈框關閉優(yōu)化demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪<BR>
    2023-06-06
  • Vue項目如何引入bootstrap、elementUI、echarts

    Vue項目如何引入bootstrap、elementUI、echarts

    這篇文章主要介紹了Vue項目如何引入bootstrap、elementUI、echarts,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • vue中路由驗證和相應攔截的使用詳解

    vue中路由驗證和相應攔截的使用詳解

    這篇文章主要為大家詳細介紹了vue中路由驗證和相應攔截的使用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • 關于在Vue中import和require的用法分析

    關于在Vue中import和require的用法分析

    在Vue項目中,我們經(jīng)常需要引入外部的模塊或文件,這時候就會用到import和require這兩個關鍵字,本文將詳細分析它們的用法,并提供具體的代碼實例和解釋,需要的朋友可以參考下
    2023-06-06
  • 在vue中使用inheritAttrs實現(xiàn)組件的擴展性介紹

    在vue中使用inheritAttrs實現(xiàn)組件的擴展性介紹

    這篇文章主要介紹了在vue中使用inheritAttrs實現(xiàn)組件的擴展性介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Vue computed實現(xiàn)原理深入講解

    Vue computed實現(xiàn)原理深入講解

    computed又被稱作計算屬性,用于動態(tài)的根據(jù)某個值或某些值的變化,來產(chǎn)生對應的變化,computed具有緩存性,當無關值變化時,不會引起computed聲明值的變化。產(chǎn)生一個新的變量并掛載到vue實例上去
    2022-10-10
  • VSCode使React?Vue代碼調試變得更爽

    VSCode使React?Vue代碼調試變得更爽

    這篇文章主要為大家介紹了VSCode使React?Vue代碼調試變得更爽的使用方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • Vue SPA首屏加載緩慢問題解決方案

    Vue SPA首屏加載緩慢問題解決方案

    這篇文章主要介紹了Vue SPA首屏加載緩慢問題解決方案,首屏時間(First Contentful Paint),指的是瀏覽器從響應用戶輸入網(wǎng)址地址,到首屏內(nèi)容渲染完成的時間,此時整個網(wǎng)頁不一定要全部渲染完成,但需要展示當前視窗需要的內(nèi)容
    2023-03-03
  • Vue3編程流暢技巧自定義Hooks

    Vue3編程流暢技巧自定義Hooks

    這篇文章主要為大家介紹了Vue3必學技巧-自定義Hooks-讓寫Vue3更暢快示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • 在vue中使用jsx語法的使用方法

    在vue中使用jsx語法的使用方法

    這篇文章主要介紹了在vue中使用jsx語法的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09

最新評論