从Elixir代码调用JavaScript而不安装Node



我正在寻找一种方法从Elixir .leex文件中调用客户端JavaScript代码,而无需安装Node.js

我的目标是将html转换为图像位串,类似于这个库:http://html2canvas.hertzen.com/

我也看了https://github.com/revelrylabs/elixir-nodejs作为一个例子。

在.*eex文件中,你可以将javascript作为字符串注入元素中,它应该可以工作。对于简单的js,我在我自己的。ex文件中的heex符号中这样做。例如,

<button onclick="(() => document.documentElement.scrollTop = 0)()">
Scroll to top
</button>

如果你的html2canvas函数是在交付给客户端的javascript包中定义的,那么触发你在。*eex文件中作为字符串编写的函数应该可以工作。

在我看来,这真的不应该为非平凡的js做。如果您正在使用Phoenix LiveView,请查看钩子。你可以编写你的自定义js,并在钩子上触发它,或者使用钩子来推送一个事件,你将在Elixir中处理服务器端。

相关内容

  • 没有找到相关文章

最新更新