【问题标题】:Yeoman generator: how do I access user supplied options?Yeoman 生成器:如何访问用户提供的选项?
【发布时间】:2014-11-08 12:20:34
【问题描述】:

我正在构建一个 yeoman 生成器。我提示用户这样命名项目:

SimplesiteGenerator.prototype.askFor = function askFor() {
    var cb = this.async();


    console.log(this.yeoman);

    var prompts = [{
        name: 'siteName',
        message: 'What do you want to call your site?'
    }];

    this.prompt(prompts, function (props) {
        this.siteName = props.siteName;

        cb();
    }.bind(this));
};

接下来,我构建文件系统:

SimplesiteGenerator.prototype.app = function app() {
    this.mkdir( 'app');
    this.mkdir('app/templates');
    this.mkdir( 'img');

我想在与项目同名的目录中构建文件系统。如何获取用户提供的选项并将其传递给应用程序?

【问题讨论】:

    标签: yeoman yeoman-generator


    【解决方案1】:

    您需要创建一个空的全局变量,然后像这样将用户回答的值分配给它

    var projectFolderName = '';
    
    this.prompt(prompts, function (props) {
        this.siteName = props.siteName;
    
         projectFolderName = props.siteName;
    
        cb();
    }.bind(this));
    

    然后通过像这样的连接将此变量注入到您的构建路径字符串中

    SimplesiteGenerator.prototype.app = function app() {
        this.mkdir( 'app/' + projectFolderName);
        this.mkdir('app/templates');
        this.mkdir( 'img');
    }
    

    【讨论】:

      猜你喜欢
      • 2014-01-10
      • 1970-01-01
      • 1970-01-01
      • 2016-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多