【问题标题】:nested quotes in hamlhaml 中的嵌套引号
【发布时间】:2012-04-08 03:56:44
【问题描述】:

我正在尝试将我的 knockoutJs html 代码转换为 HAML,试图在编译后实现一些目标,例如:

<div data-bind="attr: { 'data-something': someValue }">...</div>

所以我试试:

%div{data:{bind:"attr: { 'data-something': someValue }"}}

但是使用 haml_assets 0.1.0 我得到:

<div data-bind="attr: { "data-something': someValue }'>...</div>

所以我最后的办法是回到:

== <div data-bind="attr: { 'data-something': someValue }">...</div>

这是 HAML 中的一个错误,和/或有没有更简洁的方法来实现这一点?

【问题讨论】:

  • 您是否尝试过使用 \ 转义第二个示例中的单引号。完全在黑暗中拍摄,我对haml一无所知。
  • 添加单引号似乎没有帮助。仍然产生相同的结果。我怀疑 HAML 处理存在错误:它似乎以某种方式检测到存在嵌套(因为它产生单引号),但错误地应用了引号。

标签: html knockout.js haml rich-internet-application


【解决方案1】:

这是 haml_assets 0.1.0 上的一个问题。为此创建了一张票:https://github.com/infbio/haml_assets/issues/10

在修复之前还有一个更好的解决方法:

%div{data:{bind:'attr: { "data-something": someValue }'}}

【讨论】:

    【解决方案2】:

    试试这个:

    %div(data-bind="attr: { 'data-something': someValue }")
    

    当我在使用 HAML 的 RoR 应用程序中执行此操作时,我得到了这个渲染:

    <div data-bind="attr: { 'data-something': someValue }"></div>
    

    【讨论】:

    • 我仍然得到相同的结果,所以我认为我正在使用的 haml_assets 生成有问题。 (这是关于资产管道中的 haml 文件。)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-30
    • 2018-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-18
    • 2011-05-21
    相关资源
    最近更新 更多