Sails生成器:可变目标?

时间:2014-12-19 15:22:44

标签: sails.js

我正在创建一个风帆生成器,我想让我的目标动态选择一个模板。我试过这个:

targets: {
    './tests/unit/:entityType/:filename': {
        template: scope.entityType + scope.ext,
    }
},

然而,当我尝试时,这会引发错误。我也无法在目标对象中使用模板变量。

有没有办法做这样的事情而不必求助于生成器组合(在我的模板目标中调用另一个生成器)?

1 个答案:

答案 0 :(得分:1)

scope通过targets加载sails-generate中包含require()的文件时,

before无法使用,这就是为什么您在尝试时遇到错误的原因直接参考。但是,您可以通过在生成器的before方法中动态设置目标来执行您正在寻找的内容。所以在你的module.exports.targets["./tests/unit/:entityType/:filename"] = { template: scope.entityType + scope.ext, } 中,在调用回调之前,添加如下内容:

targets

还要记得从{{1}}对象中删除硬编码的目标 - 它不会被使用,但可能会让人感到困惑!