我正在寻找一种不需要安装Node.js就能从Elixir .leex文件中调用客户端JavaScript代码的方法
我的目标是将html转换为图像位串,其库类似于:http://html2canvas.hertzen.com/
我还以https://github.com/revelrylabs/elixir-nodejs为例进行了研究。
发布于 2021-10-21 05:39:35
在.*eex文件中,您可以将javascript作为字符串注入到您的元素中,它应该可以工作。对于简单的js,我用我自己的十六进制符号在.ex文件中这样做。例如,
<button onclick="(() => document.documentElement.scrollTop = 0)()">
Scroll to top
</button>如果您的html2canvas函数是在交付给客户机的javascript包中定义的,那么触发您在.*eex文件中以字符串形式编写的函数应该是可行的。
在我看来,对于非平凡的js来说,这并不是真正应该做的。如果您正在使用Phoenix LiveView,请查看hooks。您可以编写自定义的js并从钩子中触发它,或者使用钩子来推送在Elixir中可以在服务器端处理的事件。
https://stackoverflow.com/questions/69622511
复制相似问题