Javascript 有客户端haml解析器吗?

Javascript 有客户端haml解析器吗?,javascript,html,haml,Javascript,Html,Haml,我希望使用JavaScript在客户端呈现我的代码。服务器端有很好的haml解析器,比如or,但我不知道客户端有任何haml解析器/解码器 更新:haml现在几乎支持客户端 通过谷歌搜索,我找到了。看起来它应该满足您的需要: clientside haml js是一个用CoffeeScript编写的编译器 将HAML格式的文本模板编译成Javascript函数 生成HTML。它受到服务器端haml Javascript的启发 项目,并已编写为与Ruby功能兼容 服务器端HAML,支持所有主要浏览

我希望使用JavaScript在客户端呈现我的代码。服务器端有很好的haml解析器,比如or,但我不知道客户端有任何haml解析器/解码器


更新:haml现在几乎支持客户端

通过谷歌搜索,我找到了。看起来它应该满足您的需要:

clientside haml js是一个用CoffeeScript编写的编译器 将HAML格式的文本模板编译成Javascript函数 生成HTML。它受到服务器端haml Javascript的启发 项目,并已编写为与Ruby功能兼容 服务器端HAML,支持所有主要浏览器(IE 7+、Firefox 3.6+、浏览器), Chrome 10+,Safari),具有最小的运行时依赖性(仅限 下划线.js、下划线.string和咖啡脚本(如果使用) 模板中的CoffeeScript)

注意:haml编译器需要一个带有JSON解析器的浏览器。对于 像IE7这样的浏览器,还需要包含JSON实现。看见 更多细节。JSON实现是 可于

他们的github页面中的示例:

var fn = haml.compileStringToJs("%h1\n  %div\n    %p\n    %span");
var html = fn();
看起来它还支持类似于jquery模板的text/haml模板方法:

<script type="text/haml-template" id="simple">
%h1
  %div
    %p
    %span
</script>

<script type="text/javascript">
    var fn = haml.compileHaml('simple');
    var html = fn();
</script>

%h1
%div
%p
%跨度
var fn=haml.compileHaml('simple');
var html=fn();

found-不太像haml,但非常接近,但在查看他们的文档后,它看起来像是从haml字符串编译成发送HTML字符串的JavaScript,因此性能不如预期。例如,与其编译成HTML字符串,不如编译成JSAPI来创建元素,例如,f.e.
var div=document.createElement('div');div.setAttribute(…);div.appendChild(…)
。此外,如果使用DocumentFragment创建或使用虚拟dom库,那么使用DocumentFragment将带来更高的性能,甚至更好。React很好,因为JSX编译成创建虚拟dom的JS调用,速度更快。