Javascript 在创建自己的自定义yeoman生成器时,如何使用GrunFile中提示的变量?

Javascript 在创建自己的自定义yeoman生成器时,如何使用GrunFile中提示的变量?,javascript,templating,yeoman-generator,Javascript,Templating,Yeoman Generator,在建造约曼发电机时。给定,my index.js包含: ... prompting: function () { var done = this.async(); // have Yeoman greet the user this.log(this.yeoman); var questions = [ { name: 'value', message: 'Give me some value?'

在建造约曼发电机时。给定,my index.js包含:

...
prompting: function () {
    var done = this.async();

    // have Yeoman greet the user
    this.log(this.yeoman);

    var questions = [
        {
            name: 'value',
            message: 'Give me some value?'
        },
    ];

    this.prompt(questions, function (answers) {
        this.value = answers.value;
        done();
    }.bind(this));
},
...

writing: function () {
    this.copy("_Gruntfile.js", "Gruntfile.js");
}
...
我对“给我一些价值”提示的回答是“测试”。如何使用
\u Gruntfile
中提示的值生成:

 uglify: {
       dist: {
         files: {
           '<%= yeoman.dist %>/test.min.js': ['<%= yeoman.dist %>/test.js']
         }
       }
    },
uglify:{
地区:{
档案:{
'/test.min.js':['/test.js']
}
}
},
我试过:

uglify: {
       dist: {
         files: {
           '<%= yeoman.dist %>/<%% value%>.min.js': ['<%= yeoman.dist %>/<%value%>.js']
         }
       }
    },
uglify:{
地区:{
档案:{
'/.min.js':['/.js']
}
}
},

uglify:{
地区:{
档案:{
'/.min.js':['/.js']
}
}
},
使生成器将
替换为“测试”,但在运行时不会发生任何事情。第二个选项在my_bower.json中使用时有效。e、 g
“name”:“
变为
“name”:“test”

只需复制文件,您应该使用以下命令来解析它:

this.template("_Gruntfile.js", "Gruntfile.js");

谢谢,这帮我解决了问题。我做了更多的挖掘,复制和模板操作都通过模板引擎运行,但是它们的方式不同。我的bower.json就是这样处理的。你也可以运行
this.template(“\u Grunfile.js”,“Grunfile.js”)
这是一个源名称和目标名称的问题。我的解决方案本身解决了你的问题,还是你必须做些额外的事情?它解决了我的问题,只是想我会添加一些额外的信息,以便你可以改进答案。我的理解是stackoverflow的目标之一是建立一个知识库。当然,一旦我上了计算机,我会更新它,我只是不确定它是否解决了问题,或者只是解决方案的一部分。编辑。您说过
this.copy()
也通过模板引擎运行它,您能找到任何支持它的引用吗?
this.template("_Gruntfile.js", "Gruntfile.js");