如何在所有vuex操作中添加插件?

时间:2017-11-26 14:59:07

标签: javascript vuejs2 vuex

我可以将我的插件添加到所有Vue组件,例如使用Vue.use(myPlugin),然后通过它访问它。$ myPlugin。

我想从vuex调用我的插件。

我如何使用Vuex商店行为做同样的事情?

插件是这样的:

const SwaggerApi = {
  install(Vue, options) {
    Swagger({
      url: 'http://localhost:3000/explorer/swagger.json',
      requestInterceptor(req) {
        req.headers['Accept'] = 'application/json'
        req.headers['content-type'] = 'application/json'
        req.headers['Access-Control-Allow-Origin'] = 'http://localhost:3000'
        req.headers['Authorization'] = localStorage.getItem('token')
        return req
      }
    })
      .then((client) => {
        // console.log(client)
        client.spec.basePath = '/api'
        Vue.prototype.$swagg = client.apis // <=== What should be here?

      }, (error) => {
        console.error('failed to load api spec: %o', error)
      })
  }
}

我尝试在我的商店中添加Vue.use(SwaggerApi),并且'Vuex.use(SwaggerApi)'和`plugins:[SwaggerApi]'无效。

0 个答案:

没有答案