如何解决如何在PhoenixElixir渲染中注入HTML /使用变量来处理DOM,例如动态插入SVG或PNG?
如果我在某个svg
变量上通过分配给视图的svg,可以使用以下命令渲染到视图中:
<%= @svg %>
但是,在DOM中,我可以检查页面并看到phoenix明智地默认不渲染SVG,因为它是字符串表示形式。但是,我无法弄清楚如何覆盖该默认值,以便可以将其正确注入dom /渲染SVG,而不仅在页面中显示字符串,而且实际渲染图像。我该怎么做?事后我是否必须使用javascript进行渲染-也可以,但是仅服务器端渲染就非常好。
非常感谢!
解决方法
为使内容不被转义,可以使用Phoenix.HTML.raw/1
函数。
以下是SVG QRCode生成的示例:
<section>
<p style="text-align:center">
<%=
Routes.some_path(MyApp.Endpoint,:index,@some_id)
|> QRCode.create!(:high)
|> QRCode.Svg.create()
|> raw()
%>
</p>
</section>
产生内联SVG。请注意,raw/1
函数会自动导入模板中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。