当 vue3 全局挂载 axios 遇到 Cannot read property ‘get‘ of undefined
第一步:先安装axiosyarn add axios /npm installaxios##main.jsimport {createApp} from 'vue'import App from './App.vue'import router from './router'import ElementPlus from 'element-plus'import 'element-plus/dis
·
第一步:先安装axios
yarn add axios / npm install axios
##main.js
import {
createApp
} from 'vue'
import App from './App.vue'
import router from './router'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import print from 'vue3-print-nb'
import axios from 'axios'
const app = createApp(App)
app.config.globalProperties.$http = axios;
app.use(ElementPlus)
app.use(router)
app.use(print)
app.mount('#app')
vue3的挂载方式:app.config.globalProperties.$http = axios;
第一次不会用,所以百度了一下,是这样写的:
结果:
打印一下解构出来的ctx
const {ctx}=getCurrentInstance()
console.log(ctx);
好家伙,打印出来的数据里面没有我自定义的$http
再来打印一下getCurrentInstance()
`$http藏得挺深啊!!`
const {
appContext: {
config: {
globalProperties: {
$http
}
}
}
} = getCurrentInstance();
成功了!第一次用vue3就踩到了坑。记录一下。
更多推荐
已为社区贡献3条内容
所有评论(0)