最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue-Element-Admin集成自己的接口實現(xiàn)登錄跳轉(zhuǎn)

 更新時間:2021年06月23日 11:26:51   作者:小星博博  
關(guān)于這個Vue-element-admin中的流程可能對于新的同學不是很友好,所以本文將結(jié)合實例代碼,介紹Vue-Element-Admin集成自己的接口實現(xiàn)登錄跳轉(zhuǎn),感興趣的小伙伴們可以參考一下

1、先看一下請求配置文件,看axios.create這個方法,baseURL是基礎(chǔ)路由

baseURL:process.env.VUE_APP_BASE_API,

路徑:src-utils-request.js

2、然后再看service.interceptors.request.use,設(shè)置token請求頭,我后端集成的是jwt,所以請求頭是Authentication,如圖

config.headers['Authentication'] = getToken()

3.設(shè)置自己的狀態(tài)碼,看service.interceptors.response.use,如圖,設(shè)置為自己的狀態(tài)碼

這是我服務(wù)器響應的數(shù)據(jù),如下,1是正常響應數(shù)據(jù)

{
    "code": 1,
    "data": {
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJBY2NvdW50SWQiOiJhZG1pbiIsIm5iZiI6MTYyNDE3NTM4MiwiZXhwIjoxNjI0MTc1NDQyLCJpYXQiOjE2MjQxNzUzODJ9.7p8EHMx1b4-yIMRN7Qxden3nZsDmBvevHEf-3oVhFMg",
    "message": "登錄成功",
    "state": true
    }
}

4、改.env.production和.env.development里面的api都為空,圖只展示.env.production

5、改基礎(chǔ)路由配置,在devServer后面添加如下代碼(before這行注釋掉,這個用來模擬數(shù)據(jù)的,用不到),如圖

// before: require('./mock/mock-server.js')
    proxy: {
      [process.env.VUE_APP_BASE_API]: {
        target: 'https://xiaoxingbobo.top',
        // target: 'http://192.168.1.119:8081',
        // target: 'http://192.168.1.253:8081',
        changeOrigin: true,
        pathRewrite: {
          ['^' + process.env.VUE_APP_BASE_API]: ''
        }
      }
    }

到這里基礎(chǔ)路由基本配置好了

6、在src-view-login-index.html文件中,找到Vue-Element-Admin的登錄接口,添加如下代碼,如圖,把官方的請求方式注釋掉,this.loginForm是請求參數(shù)

this.loading = true
          this.$store.dispatch('user/login', this.loginForm)
            .then(() => {
              this.$router.push({ path: this.redirect || '/', query: this.otherQuery })
              this.loading = false
            })
            .catch((e) => {
              this.tool.log(e)
              this.loading = false
            })

7、設(shè)置用戶登錄成功后的跳轉(zhuǎn),登錄后必須把token做緩存,不然登錄頁跳轉(zhuǎn)不了

在src-store-moduls-use.js,如圖

找到action下的login方法,修改代碼如下

const actions = {
  // user login
  login({
    commit
  }, userInfo) {
    const {
      accountId,
      password
    } = userInfo
 
    return new Promise((resolve, reject) => {
      console.log('userInfo', userInfo)
      //服務(wù)器需要的登錄參數(shù)
      const payload = {
        accountId: accountId,
        password: password
      }
      //請求服務(wù)器
      user.login(payload).then(response => {
        const {
          data
        } = response
        console.log('response', response)
        commit('SET_TOKEN', data.token)
        setToken(data.token)
        resolve()
      }).catch(error => {
        reject(error)
      })
    })
  },

找到getInfo方法,修改代碼如下,因為獲取用戶信息接口沒寫,所以數(shù)據(jù)直接寫死,根據(jù)自己的做調(diào)整

getInfo({
    commit,
    state
  }) {
    return new Promise((resolve, reject) => {
      /**
       * 這里請求用戶信息和權(quán)限,目前接口沒做,只注釋了,data寫死
       * */
      // user.getInfo(state.token).then(response => {
      // const {
      //   data
      // } = response
      const {
        data
      } = {
        data: {
          roles: ['admin'],
          introduction: 'Administrator',
          avatar: 'https://cloud.xiaoxingbobo.top/nongzhibang/20210429/1107491622257669573',
          name: 'administrator'
        }
      }
 
      if (!data) {
        reject('Verification failed, please Login again.')
      }
 
      const {
        roles,
        name,
        avatar,
        introduction,
        token
      } = data
 
      // roles must be a non-empty array
      if (!roles || roles.length <= 0) {
        reject('getInfo: roles must be a non-null array!')
      }
 
      commit('SET_ROLES', roles)
      commit('SET_NAME', name)
      commit('SET_AVATAR', avatar)
      commit('SET_INTRODUCTION', introduction)
      commit('SET_TOKEN', token)
      resolve(data)
      // }).catch(error => {
      //   reject(error)
      // })
    })
  },

這樣就搞定了Vue-Element-Admin,可以登錄到首頁了

到此這篇關(guān)于Vue-Element-Admin集成自己的接口實現(xiàn)登錄跳轉(zhuǎn)的文章就介紹到這了,更多相關(guān)Vue-Element-Admin登錄跳轉(zhuǎn)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue路由vue-router詳細講解指南

    Vue路由vue-router詳細講解指南

    這篇文章主要介紹了Vue路由vue-router詳細講解指南,對vue-router感興趣的同學,可以參考下
    2021-04-04
  • Vue DevTools調(diào)試工具的使用

    Vue DevTools調(diào)試工具的使用

    本篇文章主要介紹了Vue DevTools調(diào)試工具的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • antd多選下拉框一行展示的實現(xiàn)方式

    antd多選下拉框一行展示的實現(xiàn)方式

    這篇文章主要介紹了antd多選下拉框一行展示的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • vue封裝公共方法的實現(xiàn)代碼

    vue封裝公共方法的實現(xiàn)代碼

    這篇文章給大家介紹了vue封裝公共方法的實現(xiàn),文章中通過代碼示例給大家介紹的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下
    2024-01-01
  • Avue實現(xiàn)動態(tài)查詢與數(shù)據(jù)展示的示例代碼

    Avue實現(xiàn)動態(tài)查詢與數(shù)據(jù)展示的示例代碼

    Avue是一個基于Vue.js的前端框架,它是由阿里云開發(fā)的一款企業(yè)級UI組件庫,旨在提供一套全面、易用且高性能的界面解決方案本文介紹了Avue實現(xiàn)動態(tài)查詢與數(shù)據(jù)展示的示例,需要的朋友可以參考下
    2024-08-08
  • 詳解Vue3中如何使用動態(tài)組件

    詳解Vue3中如何使用動態(tài)組件

    在?Vue?3?中,動態(tài)組件是一種允許在運行時動態(tài)切換組件的機制,本文主要為大家詳細介紹了動態(tài)組件在Vue3中的具體使用,感興趣的小伙伴可以了解下
    2024-01-01
  • 程序員應該知道的vuex冷門小技巧(超好用)

    程序員應該知道的vuex冷門小技巧(超好用)

    Vue基本用法很容易上手,但是有很多優(yōu)化的寫法你就不一定知道了,下面這篇文章主要給大家介紹了關(guān)于程序員應該知道的vuex冷門小技巧的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • Vue中使用Printjs插件實現(xiàn)打印功能

    Vue中使用Printjs插件實現(xiàn)打印功能

    Print.js 主要是為了幫助我們直接在我們的應用程序中打印 PDF 文件,無需離開界面,也無需使用嵌入,這篇文章主要介紹了Vue中使用Printjs插件實現(xiàn)打印功能,需要的朋友可以參考下
    2022-08-08
  • Vue.js父與子組件之間傳參示例

    Vue.js父與子組件之間傳參示例

    本篇文章主要介紹了Vue.js父與子組件之間傳參示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • Vue3利用vue-plugin-hiprint插件實現(xiàn)無預覽打印功能

    Vue3利用vue-plugin-hiprint插件實現(xiàn)無預覽打印功能

    在MES管理系統(tǒng)中需要實現(xiàn)條碼數(shù)據(jù)從接口返回后,直接調(diào)用打印機進行打印,跳過瀏覽器的預覽確定那一步,在嘗試很多JS的方式和插件后,都無法實現(xiàn)該功能,所以本文介紹了Vue3如何利用vue-plugin-hiprint插件實現(xiàn)無預覽打印功能,需要的朋友可以參考下
    2025-04-04

最新評論

大方县| 呼玛县| 香港| 辽宁省| 凤台县| 墨竹工卡县| 玉环县| 泾川县| 巴楚县| 绥棱县| 米脂县| 绥江县| 三门县| 中山市| 民县| 南雄市| 古丈县| 浦城县| 静乐县| 阿尔山市| 英吉沙县| 丽江市| 阳山县| 绍兴市| 库尔勒市| 长治县| 淄博市| 绥阳县| 维西| 汽车| 张家界市| 砚山县| 澎湖县| 梓潼县| 大竹县| 叶城县| 遂宁市| 延吉市| 隆回县| 化州市| 诏安县|