关于 axios 在 Vue3 全局使用
来源:7-5 后端Icode终极使用方案
EastSummer
2023-04-07
老师,您好:
在 axios 在 Vue3 全局配置 问题中看到了使用getCurrentInstance
的解决方案;
然后我在其他地方看到了另一种解决方案(依赖注入):
// 入口文件中
import axios from 'axios'
const app = createApp(App)
app.provide('$axios', axios)
// 组件内使用axios(compositionAPI)
<script setup lang="ts">
import { inject } from 'vue'
const $axios = inject('$axios')
$axios.get('xxxx').then((res) => {
// ...
}).catch((err) => {
// ...
})
</script>
想请教下,您对这两种方案的看法(比如:有否有优劣之分)
写回答
1回答
-
同学你好
我个人更喜欢第一种方案,虽然麻烦点,但是更符合这个场景。
Provide 针对的是一些全局使用的变量(比如语言,用户信息等等,直接把一个第三方库放进去好像有点不符合)。
当然这只是我个人的偏好,两种方式应该都可以实现对应的效果,选择哪个就看同学的爱好啦。
012023-04-12
相似问题