{"id":49663,"library":"vue-axios","title":"vue-axios","description":"A small wrapper for integrating Axios into Vue.js applications. Current stable version is 3.5.2. It binds Axios to the Vue instance so you don't have to import Axios in every component. Supports both Vue 2 and Vue 3. Provides multiple registration names and support for multiple Axios instances. Ships TypeScript definitions. Release cadence is low; last release was in 2022. Key differentiator: simple migration path from vue-resource or manual Axios imports by exposing Axios globally via Vue.prototype (Vue 2) or app.config.globalProperties (Vue 3).","status":"maintenance","version":"3.5.2","language":"javascript","source_language":"en","source_url":"https://github.com/imcvampire/vue-axios","tags":["javascript","vue","axios","wrapper","typescript"],"install":[{"cmd":"npm install vue-axios","lang":"bash","label":"npm"},{"cmd":"yarn add vue-axios","lang":"bash","label":"yarn"},{"cmd":"pnpm add vue-axios","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency; required for HTTP requests","package":"axios","optional":false},{"reason":"Peer dependency; Vue core library","package":"vue","optional":false}],"imports":[{"note":"Default export. For Vue 2, use Vue.use(VueAxios, axios). For Vue 3, use app.use(VueAxios, axios). CommonJS require works but TypeScript may complain about default export.","wrong":"const VueAxios = require('vue-axios')","symbol":"VueAxios","correct":"import VueAxios from 'vue-axios'"},{"note":"Named export for manual plugin installation; rarely used.","wrong":"import { VueAxios } from 'vue-axios'","symbol":"install","correct":"import { install } from 'vue-axios'"},{"note":"Namespace import not needed; default export is the plugin object.","wrong":"import * as VueAxios from 'vue-axios'","symbol":"default","correct":"import VueAxios from 'vue-axios'"}],"quickstart":{"code":"// main.js or main.ts\nimport { createApp } from 'vue'\nimport axios from 'axios'\nimport VueAxios from 'vue-axios'\nimport App from './App.vue'\n\nconst app = createApp(App)\napp.use(VueAxios, axios)\n\n// Provide axios for Composition API\napp.provide('axios', app.config.globalProperties.axios)\n\napp.mount('#app')\n\n// In a component (Options API)\n// export default {\n//   methods: {\n//     fetchData() {\n//       this.axios.get('/api/data').then(response => {\n//         console.log(response.data)\n//       })\n//     }\n//   }\n// }\n\n// In Composition API\n// import { inject } from 'vue'\n// const axios = inject('axios')\n// axios.get('/api/data').then(response => console.log(response.data))","lang":"typescript","description":"Integrate Axios into Vue 3 using vue-axios plugin, with Options API and Composition API usage."},"warnings":[{"fix":"Use app.use(VueAxios, axios) and app.provide('axios', app.config.globalProperties.axios) for Composition API. See README examples.","message":"Vue 3: app.use() instead of Vue.use(). Composition API requires provide/inject pattern; global properties not available in setup()","severity":"breaking","affected_versions":">=3.0.0"},{"fix":"Use provide/inject in main.ts: app.provide('axios', app.config.globalProperties.axios) and inject('axios') in setup().","message":"In Vue Composition API, axios is not automatically available via this; you must use provide/inject or import Axios directly","severity":"gotcha","affected_versions":"all"},{"fix":"Migrate to Vue 3, or continue using vue-axios 2.x for Vue 2 support (check compatibility).","message":"Vue 2 is deprecated as of end of 2023; vue-axios may not receive updates for Vue 2","severity":"deprecated","affected_versions":">=3.0.0"}],"env_vars":null,"search_vec":"'2':39,85 '2022':64 '3':42,89 '3.5.2':17 'app.config.globalproperties':87 'applic':12 'axio':3,9,20,32,51,76,80,92 'bind':19 'cadenc':57 'compon':35 'current':13 'definit':55 'differenti':66 'everi':34 'expos':79 'global':81 'import':31,77 'instanc':24,52 'integr':8 'javascript':90 'key':65 'last':60 'low':59 'manual':75 'migrat':68 'multipl':44,50 'name':46 'path':69 'provid':43 'registr':45 'releas':56,61 'resourc':73 'ship':53 'simpl':67 'small':5 'stabl':14 'support':36,48 'typescript':54,94 'version':15 'via':82 'vue':2,23,38,41,72,84,88,91 'vue-axio':1 'vue-resourc':71 'vue.js':11 'vue.prototype':83 'wrapper':6,93","created_at":"2026-06-07T17:02:57.516176+00:00","updated_at":"2026-06-07T17:02:57.516176+00:00","problems":[{"fix":"Use provide/inject pattern: app.provide('axios', app.config.globalProperties.axios) in main.js, then inject('axios') in setup.","cause":"Axios not available via this in Composition API; using this.axios or this.$http in setup fails.","error":"TypeError: Cannot read properties of undefined (reading 'get') at setup()"},{"fix":"Use import { createApp } from 'vue'; const app = createApp(App); app.use(VueAxios, axios);","cause":"Using Vue 3 with Vue.use() instead of app.use(). Vue 3 does not export a global Vue constructor.","error":"Uncaught TypeError: _Vue2.default is not a constructor"},{"fix":"Install @types/vue-axios or use // @ts-ignore. Alternatively, use import VueAxios = require('vue-axios') with esModuleInterop: true.","cause":"TypeScript strict module interop issues; vue-axios does not export a default in some TypeScript configurations.","error":"Module '\"vue-axios\"' has no default export. Did you mean to use 'import { install } from \"vue-axios\"' instead?"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/imcvampire/vue-axios#readme","github":"https://github.com/imcvampire/vue-axios","docs":null,"changelog":null,"pypi":null,"npm":"vue-axios","openapi_spec":null,"status_page":null,"smithery":null,"categories":["testing"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}