Я пытаюсь обновить Liveview с помощью Javascript после запуска события Javascript. Liveview должен отображать элемент <div>
с некоторыми значениями, отправленными из Javascript.
Мой вопрос: как мне передать эти значения из Javascript в Liveview?
Мне также может понадобиться значение, отправленное Liveview в Javascript. Опять же: как мне передать эти значения из Liveview в Javascript?
Существует Livesocket, созданный в Javascript для работы liveview, но я не вижу способа получить или установить присвоенные значения оттуда. Единственный способ передать значения из / в Liveview в какой-то момент кажется через DOM. Например:
<div id="lv-data" phx-hook="JavascriptHook"></div>
let hooks = {};
hooks.JavascriptHook = {
mounted(){
this.el.addEventListener("jsEvent", (e) =>
this.pushEvent("jsEventToPhx", e.data, (reply, ref) =>
console.log("not sure what to do here")));
this.handleEvent("phxEventToJS", (payload) => console.log("data received: " + payload));
}
}
Странно использовать DOM с фиктивным <div>
вообще для чистого обмена данными ...