当我需要处理交易电子邮件时,我将 mjml 评估为一种让我的日子变得不那么可怕的工具,并且有一个功能我找不到任何信息,但我确信人们有办法做到这一点正确的。
可重复使用的布局。
我以前用哈巴狗写电子邮件,这是那里的基本功能。我知道 mjml 想成为一个框架而不是模板引擎,但他们确实有“mj-include”并且布局是一种反向包含。
解释我想要实现的伪代码:
布局.mjml
<mjml>
<mj-head>...</mj-head>
<mj-body>
... some header
<mj-this-is-where-content-comes><</mj-this-is-where-content-comes>
... some footer
</mj-body>
</mjml>
欢迎用户.mjml
<mj-layout src="./layout.mjml">
<mj-text>
Hi user!
</mj-text>
</mj-layout>
根据我的阅读,我看到人们如何处理它的几种方法:
mj-include <= 文档示例就在此基础上,仍然需要为每个模板进行大量复制和粘贴
在编译过程中用布局包装模板 <= 在这种情况下,我失去了 mjml 工具的功能,我可以设置观察者,为每次更改编译和包装我的代码在布局中
自定义组件 <= 似乎是最好的选择,但不是可重复使用的布局这种常见的情况,如果它是一个解决方案,那么现在我可能会找到它的自定义组件