宛先ディレクトリのフォルダの名前を変更しようとしています。Yeoman(mem-fs-editor)を使用して新しく作成したディレクトリの名前を変更します
root/
├── generators
│ └── app
│ ├── templates
│ │ └── app
│ │ └── widget
│ │ ├── widget.controller.ts
│ │ ├── widget.service.ts
│ │ └── widget.module.ts
│ └── index.js
└── .yo-rc.json
私は、ユーザーがprompting
段階に入り名に(destinationPath
中)widget
ディレクトリの名前を変更しようとしている:私のtemplates
フォルダ内のディレクトリ構造は次のようになります。ここで私はこれをしようとしています方法は次のとおりです。
module.exports = generators.Base.extend({
copyAppTemplate: function() {
this.fs.copyTpl(this.templatePath('**/*'), this.destinationPath('.'), this.props);
this.fs.move(
this.destinationPath('app/widget'),
this.destinationPath('app/' + this.props.widgetName)
);
}
})
copyTpl
への呼び出しが正しくtemplatePath
からdestinationPath
にアプリを足場とテンプレートされます。しかし、fs.move
操作が呼び出されたときに、私は次のようなエラーメッセージが出ます:私はYeoman file system documenationから理解して何から
PS C:\Users\username\code\generator-dashboard-widget-test> yo dashboard-widget
? Your widget's name: (generator-dashboard-widget-test)
? Your widget's name: generator-dashboard-widget-test
events.js:154
throw er; // Unhandled 'error' event
^
AssertionError: Trying to copy from a source that does not exist: C:\Users\username\code\generator-dashboard-widget-test\app\widget
at EditionInterface.exports._copySingle (C:\Users\username\code\generator-dashboard-widget\node_modules\mem-fs-editor\lib\actions\copy.js:45:3)
at EditionInterface.exports.copy (C:\Users\username\code\generator-dashboard-widget\node_modules\mem-fs-editor\lib\actions\copy.js:23:17)
at EditionInterface.module.exports [as move] (C:\Users\username\code\generator-dashboard-widget\node_modules\mem-fs-editor\lib\actions\move.js:4:8)
at module.exports.generators.Base.extend.copyAppTemplate (C:\Users\username\code\generator-dashboard-widget\generators\app\index.js:54:17)
at Object.<anonymous> (C:\Users\username\code\generator-dashboard-widget\node_modules\yeoman-generator\lib\base.js:431:23)
at C:\Users\username\code\generator-dashboard-widget\node_modules\run-async\index.js:26:25
at C:\Users\username\code\generator-dashboard-widget\node_modules\run-async\index.js:25:19
at C:\Users\username\code\generator-dashboard-widget\node_modules\yeoman-generator\lib\base.js:432:9
at processImmediate [as _immediateCallback] (timers.js:383:17)
を、仮想ファイルシステム上のすべてのアクションが同期しているので、app/widget
ディレクトリがmem-fs-editor
の前に存在している必要がありますインスタンスはそれを移動しようとします。
ディレクトリの名前を変更する必要がありますか?
ノード5.6.0のWindows 8.1でYeoman 1.8.4を使用しています。