日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > vue >内容正文

vue

vue-element-admin中 vuex 的使用

發(fā)布時(shí)間:2023/12/2 vue 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vue-element-admin中 vuex 的使用 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

vue-element-admin 中 vuex 是模塊化的。

登錄流程

1,HTTP 配置(utils/request.js)
2,API 配置(api/user.js)
import request from '@/utils/request'export function login(username, password) {return request({url: '/api-auth/oauth/user/token',headers: {'client_id': 'jeecp','client_secret': 'webApp'},method: 'post',data: { 'username': username, 'password': password }}) }
3,vuex 中的 user 模塊 (store/modules/user.js)

(在store/modules中創(chuàng)建一個(gè)自己的 store (user.js) 模塊,并在其中書(shū)寫(xiě)自己的state/mutation/action )

import { login } from '@/api/user' import { getToken } from '@/utils/auth'const getDefaultState = () => {return {token: getToken()} } // 相當(dāng)于Vue的data const state = getDefaultState()const mutations = {SET_TOKEN: (state, token) => {state.token = token} }const actions = {// user loginlogin({ commit }, userInfo) {const { username, password } = userInforeturn new Promise((resolve, reject) => {login(username.trim(), password).then(response => {const { data } = responsecommit('SET_TOKEN', data.access_token)setToken(data.access_token)resolve()}).catch(error => {reject(error)})})} }export default {namespaced: true,state,mutations,actions }
4,獲取全部的全局變量(store/getters.js)
// 相當(dāng)于把全部的 全局變量 歸結(jié)到了一起 const getters = {token: state => state.user.token } export default getters
5,注冊(cè)vuex 注冊(cè) user 模塊
import Vue from 'vue' import Vuex from 'vuex' import getters from './getters' import user from './modules/user'Vue.use(Vuex)const store = new Vuex.Store({modules: {user},getters })export default store
6,在頁(yè)面中使用
// 變量 this.$store.state.user.token // 獲取 store/getters.js 里面的值 this.$store.getters.token// 方法 // 通過(guò) this.$store.dispatch() 訪問(wèn)到 對(duì)應(yīng) user 模塊中的 actions 中的 login 方法 this.$store.dispatch('user/login', this.loginForm).then(() => {console.log('success') }).catch(() => {console.log('err') })// 修改 this.$store.commit('SET_TOKEN', '這里是 token 的值')

參考

  • https://www.cnblogs.com/ycc1/p/vuex01.html
  • https://blog.csdn.net/wangle_style/article/details/90287742

總結(jié)

以上是生活随笔為你收集整理的vue-element-admin中 vuex 的使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。