const deleteBook = async () => {
const bookId = selectedBook.value.id;
const token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIwY2Y5Nzk0Yi1jYjczLTcyQ";
const { data, error, refresh } = await useFetch<{ results: Book[] }>(
`https://api.storage/${bookId}`,
{
headers: {
Authorization: `Bearer ${token}`,
},
method: "delete",
server: false,
}
);
if (error.value){
console.error(error.value)
} else {
isBookDeleted.value = true;
showBookDetails.value = false;
}
refresh();
};
Логики обновления страницы при закрытии модалки нет и в модалке событие @click="$emit('close') на закрытие, но она обновляется)
если в useFetch используется реактивная переменная, то она автоматически watch-ит валью, это я сегодня узнал, так что watch в начальном коде не нужен.
В рефах у меня:
const deleteBook = async (book: Book) => {
const { error } = await useFetch(`https://api.storage/${book.id}`, {
method: "DELETE",
headers: {
Authorization: `Bearer ${token}`,
},
});
if (error.value) {
apiErrorHandler(error.value);
} else {
showDeleteModal.value = true;
selectedBook.value = null;
refresh();
}
};
currentForm
имеет тип string | null, а должен быть Component | null, то есть надо передавать в toggleForm импортированный компонент, а не строкуFROM nginx/unit:${UNIT_VERSION} as apiпоменяется на
FROM php:8.1-cli as cliа в остальном все тоже самое.