我在我的angular项目中使用了yeoman,bower,nmp和grunt。基本上,我将用_attachments替换默认的app位置。我已经在Gruntfile.js中做了这样的更改
Gruntfile.js: app: require('./bower.json').appPath || '_attachments'然而,当我使用yeoman创建控制器,视图时,比如yo angular:controller xxx,它仍然会在app目录中创建。如何覆盖它?
发布于 2014-04-15 01:18:56
根据generator-angular文档中的this,您可以将appPath选项添加到bower.json,如下所示。
{
...
"appPath": "_attachments"
}此选项在generator-angular的script-base.js中的以下代码中加载。
this.env.options.appPath = require(path.join(process.cwd(), 'bower.json')).appPath;在Generator.prototype.appTemplate()函数中使用this.env.options.appPath指定输出目录。
Generator.prototype.appTemplate = function (src, dest) {
yeoman.generators.Base.prototype.template.apply(this, [
src + this.scriptSuffix,
path.join(this.env.options.appPath, dest.toLowerCase()) + this.scriptSuffix
]);
};我还验证了bower.json中的appPath可以像预期的那样为我工作。
发布于 2016-02-18 07:11:16
这是一个相当古老的问题,但我相信您要查找的是项目目录中的.yo-rc.json。您可以在其中设置由yeoman创建各种项目的目录。
https://stackoverflow.com/questions/23043740
复制相似问题