javascript - Handlebars.js 原始帮助程序

标签 javascript handlebars.js

我有一个效果很好的 Handlebars 模板。我希望能够将以下内容放入其中:

<script id="someTemplate" type="text/x-handlebars-template">
    <div class="editStuff">
        <span {{#if aThing}} data-someKey="{{anotherThing}}" {{/if}}>
            {{aThirdThing}}
        </span>
    </div>
</script>

这显然会在处理 Handlebars 文件时呈现。所有的 {{}} 最终都是空白的,这不好。我找到了

{{{{raw-helper}}}}

阻止助手,并像这样尝试:

{{{{raw-helper}}}}
<script id="someTemplate" type="text/x-handlebars-template">
    <div class="editStuff">
        <span {{#if aThing}} data-addresskey="{{anotherThing}}" {{/if}}>
            {{aThirdThing}}
        </span>
    </div>
</script>
{{{{/raw-helper}}}}

但这最终会从 HTML 中删除整个脚本 block 。

根据Handlebars docs原始 block 中的任何内容都应保持原样。

我确实尝试注册文档中提到的帮助程序,以防万一它实际上没有包含在内,但这也没有帮助。

最佳答案

你可以逃避你的 mustache :

<script id="someTemplate" type="text/x-handlebars-template">
    <div class="editStuff">
        <span \{{#if aThing}} data-someKey="\{{anotherThing}}" \{{/if}}>
            \{{aThirdThing}}
        </span>
    </div>
</script>

当然不是最漂亮的解决方案,但它工作得很好。

关于javascript - Handlebars.js 原始帮助程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33741905/

相关文章:

javascript - 使用 JavaScript 打开第一个 Accordion 选项卡

javascript - 在 Node JS/Express Web 应用程序中生成 PDF 报告

ember.js - Ember CLI 中的 Handlebar 辅助语法

node.js - 这个字符 ""是什么?为什么它会导致换行?

javascript - Handlebars - 期待 'OPEN_INVERSE_CHAIN' 、 'INVERSE' 、 'OPEN_ENDBLOCK' ,得到 'EOF'

javascript - Jquery/Javascript - 单击 SVG 时在 IE 上检测到元素外的单击失败

javascript - 如何将 JSONP 存储到变量中?

javascript - React - 使用不断变化的 Pros 渲染对象

javascript - 将 JavaScript 和 CSS 作为二进制文件从服务器传输到客户端的可行性?

javascript - 获取 Handlebars 中父数组的索引