Mik*_* M. 3 ruby handlebars.js slim-lang ractivejs
我slim在 sinatra 应用程序中使用模板,并ractive.js在客户端使用类似句柄的语法。
我将模板代码保留在script标签内,但 slim 尝试像文件的其余部分一样解析它们。我的简化代码如下所示:
section.header-section
h1 Items
section.main-section
script#items type="text/html"
<ul class="items">
{{#each items}}
<li>{{title}}</li>
{{/each}}
</ul>
Run Code Online (Sandbox Code Playgroud)
对于此代码 slim 解析器返回一个错误:Unknown line indicator ... Line 29, Column 14 {{#each items}} ^。
我尝试了建议的解决方法:
set :slim, {:pretty => true, :attr_list_delims => {'(' => ')', '[' => ']'}, :code_attr_delims => {'(' => ')', '[' => ']'}}
Run Code Online (Sandbox Code Playgroud)
这没有帮助。所以我需要slim忽略里面的所有内容,script保留缩进以提高可读性。唯一可能的解决方案是创建我自己的嵌入式引擎,并且实际上在其中不执行任何操作。还有其他方法可以修复吗?
您可以用于|逐字文本:
script#items type="text/html"
|
<ul class="items">
{{#each items}}
<li>{{title}}</li>
{{/each}}
</ul>
Run Code Online (Sandbox Code Playgroud)
其产生:
script#items type="text/html"
|
<ul class="items">
{{#each items}}
<li>{{title}}</li>
{{/each}}
</ul>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2854 次 |
| 最近记录: |