Я пытаюсь разобраться с реактивностью svelte 3 ...
Я хотел принудительно обновить пользовательский интерфейс одним нажатием кнопки.Я использую пользовательский компонент AsyncFetcher
, который принимает HTTP-данные поста и возвращает объект data
(результат HTTP-поста) для своего слота.
Я хотел отключить функцию.Поэтому, когда нажимается кнопка «Отключить», вызывается http api с последующим обновлением представления данных.
<script>
export let id
function onDisable() {
fetch('disable-api-url', {id: id})
// Then ??
// What to do after the fetch call, to refresh the view
}
</script>
<AsyncFetcher postParam={id} let:data>
{data.name}
<button on:click={??}>Refresh</button>
<button on:click={onDisable}>Disable Item</button>
</AsyncFetcher>
Я попытался сделать on:click={() => id=id}
, чтобы обмануть его, чтобы обновить добезрезультатно.Если бы id
был бы объектом, а не строкой, id={...id}
сработал бы, что, к сожалению, здесь не так.
Каков правильный путь для достижения этой цели?