Я пытаюсь выполнить простой запрос get на мой сервер с помощью ax ios. Я получаю эту трассировку стека в консоли:
TypeError: Cannot read property 'protocol' of undefined
at isURLSameOrigin (isURLSameOrigin.js?3934:57)
at dispatchXhrRequest (xhr.js?b50d:109)
at new Promise (<anonymous>)
at xhrAdapter (xhr.js?b50d:12)
at dispatchRequest (dispatchRequest.js?5270:52)
Вот файлы кодов: https://gist.github.com/DavidMarcu/68f6bd20fa1e21568464f10e2a2baa6a Код: store / index. js
import Vue from 'vue'
import Vuex from 'vuex'
import bookService from '@/service/BookService.js';
Vue.use(Vuex)
export default new Vuex.Store({
state: {
books: []
},
mutations: {
SET_BOOKS(books) {
this.state.books = books
}
},
actions: {
fetchBooks(context) {
bookService.getAllBooks()
.then(response => {
console.log(response)
context.commit('SET_BOOKS', response.data)
})
.catch(error => {
console.log(error)
})
}
},
modules: {
}
})
Home. vue (просмотр компонента) - шаблон не имеет значения
<script>
import BookElement from "@/components/BookElement.vue";
export default {
components: {
BookElement
},
created() {
this.$store.dispatch("fetchBooks");
},
computed: {
books() {
return this.$store.state.books;
}
}
};
</script>
<style scoped>
</style>
BookService. js
import axios from 'axios';
const apiClient = axios.create({
baseUrl: `http://localhost:9001/books`,
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
}
})
const bookService = {
getAllBooks() {
return apiClient.get()
}
}
export default bookService
Я попробовал решение для плагина (vue -ax ios), но я не понимаю всех этих хлопот только из-за запроса get, который находится даже не в файле. vue, а в файле. js, который я импортирую в свой компонент. Пакет ax ios действительно установлен. Я ожидаю увидеть в компоненте Home в vue devtools, что в вычисляемом свойстве books у меня есть тело ответа.
Редактировать: я добавил код в вопрос также.