Я пытался использовать этот код для публикации данных с помощью Ax ios Api в Vue, когда я получаю следующие ошибки:
Доступ к XMLHttpRequest по адресу https://jsonplaceholder.typicode.com/todos 'from origin' null 'был заблокирован политикой CORS: в запрошенном ресурсе отсутствует заголовок' Access-Control-Allow-Origin '. 16_Axios_API_CRUD. html: 96 Ошибка: ошибка сети при e.exports (распространение. js: 25) в XMLHttpRequest.l.onerror (распространение. js: 25)
new Vue({
el: "#app",
data() {
return {
todos: [],
newTodo: "",
loading: true,
errored: false
};
},
methods: {
addToDo() {
debugger;
const _todo = {
title: this.newTodo,
completed: false
};
//const { title } = this.newTodo;
axios
.post("https://jsonplaceholder.typicode.com/todos", _todo)
.then(res => (this.todos = [...this.todos, res.data]))
}
},
mounted() {
axios
.get("https://jsonplaceholder.typicode.com/todos?_limit=5")
.then(response => (this.todos = response.data))
}
});
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.19.2/axios.min.js"></script>
<div id="app">
<input
v-model.trim="newTodo"
/>
<input
value="Add"
type="button"
v-on:click="addToDo"
/>
<section v-else>
<div v-bind:key="todo.id" v-for="todo in todos">
<div class="todo-item" v-bind:class="{'is-complete':todo.completed}">
<p>
{{todo.title}}
</p>
</div>
</div>
</section>
</div>
Кто-нибудь сталкивался с этим сообщением об ошибке раньше? Нужен ли мне деструктор, который я заметил в каком-то уроке перед его публикацией? Не совсем понятно, почему в некоторых уроках есть деструктор.
Редактировать: похоже на проблему «медленной обработки». Я могу опубликованные данные после долгого времени. Как добавить некоторую «анимацию», чтобы показать, что она на самом деле публикует данные и возвращает их обратно?