nuxt他のjsファイルでstoreを使用する方法

1301 ワード

前言
新しいjsファイルでstoreの中のデータを使いたいです.例えばtokenはパッケージのaxiosの中で、ヘッダの中で使用するように要求したり、appのJSインタフェースでtokenを取得してstoreに保存したりします.私たちはvueでどのように使用するか知っています.
コード#コード#
/*
 * @Description: 
 * @Author: lxc
 * @Date: 2019-07-02 16:14:07
 * @LastEditTime: 2019-08-14 16:08:19
 * @LastEditors: lxc
 */
//    store    

import Vue from 'vue'
import Vuex from 'vuex'
import state from './state'
import actions from './actions'
import mutations from './mutations'
import getters from './getters'
import canteen from './modules/canteen'
import contact from './modules/contact'
import health from './modules/health'
import scan from './modules/scan'

Vue.use(Vuex)

let store

const initStore = () => {
  return store || (store = new Vuex.Store({
    //       
    state,
    //        actions,    cimmit    mutations
    actions,
    //      
    mutations,
    getters,
    modules: {
      // store   ....
    }
  }))
}

export default initStore


他のjsファイルで呼び出す方法:
import store from '@/store'

const TOKEN = 'testToken'

//          
function getToken() {
  return isNotEmpty(store().state.token) ? store().state.token : TOKEN
}


自分で使ってもいいです.皆さんに役に立つことを願っています.