有角度的苗条 - 使用{{double curly braces}}冲突

时间:2014-09-14 18:26:51

标签: ruby-on-rails angularjs slim-lang

当您使用{{}}时,slim会查看第一个{,并认为它是一个属性。

如何禁用{作为瘦身的关键角色。那么使用{{ }}将被解释为angular,而不是一个苗条的属性?

(P.S。我使用slim-rails gem,所以解决方案可能特定于rails,但谁知道?)

3 个答案:

答案 0 :(得分:8)

以下是我在不更改设置的情况下所做的事情:

p
  | {{ user.name }}
  = a_method_call

p ng-bind="user.name" = a_method_call

答案 1 :(得分:4)

您可以更改slim的默认选项,以便不使用{}。把它放到初始化文件夹:

Slim::Engine.set_options attr_list_delims: {'(' => ')', '[' => ']'}, code_attr_delims: {'(' => ')', '[' => ']'}

答案 2 :(得分:1)

如果您希望更改Angular中的插值标记,可以使用配置块中 $interpolateProvider 的相应方法:

angular.
    module('myApp', []).
    config(function ($interpolateProvider) {
        $interpolateProvider.startSymbol('[[');
        $interpolateProvider.endSymbol(']]');
    });

然后Angular将无法识别旧标记({{}}) 你将使用新的:

<span>[[someValue]]</span>