私のカスタム Yeoman ジェネレーターでは、すべての Bower コンポーネントがインストールされた後にのみ、ファイルのコピーを行いたいと考えています。現在、index.js
コールバックは次のようになっています。
var SiteGenerator = module.exports = function SiteGenerator(args, options, config) {
yeoman.generators.Base.apply(this, arguments);
this.on('end', function () {
this.installDependencies({
skipInstall: options['skip-install'],
callback: function () {
this.copy('assets/bower_components/wordpress/index.php', 'app/index.php');
}.bind(this)
});
});
this.pkg = JSON.parse(this.readFileAsString(path.join(__dirname, '../package.json')));
};
ただし、明らかにthis
、生成されたばかりのサイトではなく、元のジェネレーターを参照しています。SiteGenerator.prototype.app = function app()
したがって、ディレクトリの作成とコピーが行われるジェネレーター関数は、installDependencies
私が試したコールバックにあります。
SiteGenerator.prototype.app.copy()
しかし、これは明らかにエラーを引き起こしています。
Bower コンポーネントがインストールされた後、新しく生成されたディレクトリにアクセスするにはどうすればよいですか?