14

Swig 模板和 AngularJS 都使用双花括号表示法。如何在 Swig for Angular 中转义双卷曲?

4

3 回答 3

26

双卷曲可以用

{% raw %}

eg: {% raw %}{{ foobar }}{% endraw %}

强制内容不被自动转义。所有 swig 指令都将被忽略,内容将完全按照给出的方式呈现。 请参阅 Swig 手册/标签/原始文件。

于 2014-09-07T13:30:21.820 回答
14

为什么不{{}}通过[[]]将 AngularJS 配置为接受[[]]新的{{}}. 在你的 Angular-App-Config 中试试这个(用 angularjs-1.2.4 试过):

config(['$interpolateProvider',
    function($interpolateProvider) {
        // Swig uses {{}} for variables which makes it clash with the use of {{}} in AngularJS.
        // Replaced use of {{}} with [[]] in AngularJS to make it work with Swig.
        $interpolateProvider.startSymbol('[[');
        $interpolateProvider.endSymbol(']]');
    }
])
于 2014-09-08T15:23:39.483 回答
9

而不是替换角度的插值符号。更改 swig 的默认值。以下代码将做到这一点。

var swig = require('swig'); 
swig.setDefaults({
   varControls: ['[[', ']]'] 
});
于 2015-12-02T11:57:44.403 回答