gpt4 book ai didi

javascript - 在 Vue 的 Axios 插件中全局定义基本 URL

转载 作者:行者123 更新时间:2023-12-04 04:19:23 25 4
gpt4 key购买 nike

在我的 Vue.js 项目中,我使用 here 中的说明为 Axios 创建了一个插件。以便 Axios 将在项目中全局可用。我项目中的相关代码如下所示:

在 src/plugins/axios.js -

import axios from 'axios';

export default {
install: function(Vue) {
Object.defineProperty(Vue.prototype, '$axios', { value: axios });
}
}

在 src/main.js -
import axios from './plugins/axios';
Vue.use(axios);

new Vue({
render: h => h(App),
created() {
console.log(this.$axios ? 'axios plugin works' : 'axios plugin does not work');
}
}).$mount('#app');

控制台正在输出 axios plugin works所以到目前为止一切都很好。

在使用 Axios 的文件中,有几个硬编码的 URL。下面显示的只是文件中方法的一个示例:
src/forms/official-scenarios.vue -
export default {
data() {
return {
errors: [],
officialScenarios: []
}
},
methods: {
getOfficialScenarios() {
this.$axios
.get('https://localhost/myapp/api/scenariolog')
.then(response => {
this.officialScenarios = response.data;
})
.catch(error => {
this.errors.push(error);
});
}
},
mounted: function () {
this.getOfficialScenarios();
},
}

我想做的是为 https://localhost/myapp/api 全局定义一个基本 URL。并在使用 this.$axios 的每个方法中引用它.那怎么定义?那么 official-scenarios.vue 中的用法是什么样的? ?

最佳答案

您可以在 axios 对象本身中设置基本 URL。它应该看起来像:

// Set base URL
axios.defaults.baseURL = process.env.baseURL || process.env.apiUrl || '';

关于javascript - 在 Vue 的 Axios 插件中全局定义基本 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59791785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com