3

我想将默认的Swig tagControls {% ... %} 更改为 {? ... ?} 我正在使用sails.js 框架。

我添加到配置文件夹 swig.js 文件,其中包含:

module.exports.swig = {

  SwigOpts: {
    'tagControls':  ['{?', '?}']
  }

};

但它不起作用,在浏览器中查看是这样的:

{? for user in users ?}
{? user.email ?}
{? endfor ?}

所以,标签没有被解释。我的配置文件错了吗?标准标签 {% ... &} 工作正常。

4

2 回答 2

6

像这样的东西应该起作用:在你的config/views.js

engine: {
  ext: 'swig', // Or `html`, whatever you are using
  fn: function (pathName, locals, cb) {
    var swig = require('swig');
    swig.setDefaults({tagControls: ['{?', '?}']});
    return swig.renderFile(pathName, locals, cb);
  }
},

至于config/swig.jsand module.exports.swig,我认为它不会被自动处理。

于 2014-02-17T15:15:35.540 回答
0

如果有人需要像我一样更改 scape var(最好使用 swig 和 angular)只需要更改或添加varControls到配置对象

engine: {
  ext: 'swig',
  fn: function (pathName, locals, cb) {
    var swig = require('swig');
    swig.setDefaults({varControls: ['[[', ']]']});
    return swig.renderFile(pathName, locals, cb);
  }
}
于 2015-01-23T17:36:59.543 回答