How to Use Trix Editor With Phoenix LiveView: Difference between revisions
From ElixirBlocks
No edit summary |
No edit summary |
||
Line 8: | Line 8: | ||
<source> | <source> | ||
let liveSocket = new LiveSocket("/live", Socket, {params: {_csrf_token: csrfToken}, | let liveSocket = new LiveSocket("/live", Socket, { | ||
params: { | |||
_csrf_token: csrfToken | |||
}, | |||
hooks:{ | hooks: { | ||
TrixEditor: { | |||
mounted() { | |||
let element = document.querySelector("trix-editor"); | |||
this.ele = element | |||
this.ele.value = "data in the value attribute"; | |||
this.ele.addEventListener("trix-change", (e) => { | |||
console.log(e.target.value) | |||
}); | |||
} | |||
} | |||
} | |||
}) | }) |
Revision as of 16:18, 21 June 2023
This page is in progress
To integrate Trix editor we use a JavaScript Hook
JavaScript Hook
let liveSocket = new LiveSocket("/live", Socket, { params: { _csrf_token: csrfToken }, hooks: { TrixEditor: { mounted() { let element = document.querySelector("trix-editor"); this.ele = element this.ele.value = "data in the value attribute"; this.ele.addEventListener("trix-change", (e) => { console.log(e.target.value) }); } } } })
LiveView
<div phx-hook="TrixEditor" id="xyz"> <div id="richtext" phx-update="ignore"> <trix-editor class="trix-content"></trix-editor> </div> </div>