Javascript 使用Grunt编译把手模板
我正试图使用Grunt编译我的把手模板,如下所述。没关系,但它将所有hbs文件编译成一个文件,这不是很好。我想为Menu1和Menu2目录提供一个单独的文件。如果我能为每个目录做一个单独的任务,那就太好了。 但由于我仍在学习这些东西,我找不到更好的方法使其发挥作用。Javascript 使用Grunt编译把手模板,javascript,gruntjs,handlebars.js,Javascript,Gruntjs,Handlebars.js,我正试图使用Grunt编译我的把手模板,如下所述。没关系,但它将所有hbs文件编译成一个文件,这不是很好。我想为Menu1和Menu2目录提供一个单独的文件。如果我能为每个目录做一个单独的任务,那就太好了。 但由于我仍在学习这些东西,我找不到更好的方法使其发挥作用。 或者,如果我能让手柄分别编译每个文件 项目结构: /js/: ->/app/ app_init.js ->/templates/ -> /Menu1/
或者,如果我能让手柄分别编译每个文件 项目结构:
/js/:
->/app/
app_init.js
->/templates/
-> /Menu1/
template1.hbs
template2.hbs
-> /Menu2/
template1.hbs
template2.hbs
grunfile.js
module.exports = function(grunt) {
var TEMPLATES_LOCATION = "./js/templates/",
TEMPLATES_EXTENSION = ".hbs",
TEMPLATES_OUTPUT_LOCATION = TEMPLATES_LOCATION,
TEMPLATES_OUTPUT_FILENAME = "compiled_templates.js";
grunt.initConfig({
watch: {
handlebars: {
files: [TEMPLATES_LOCATION + '**/*' + TEMPLATES_EXTENSION],
tasks: ['handlebars:compile']
}
},
handlebars: {
compile: {
src: TEMPLATES_LOCATION + '**/*' + TEMPLATES_EXTENSION,
dest: TEMPLATES_OUTPUT_LOCATION + TEMPLATES_OUTPUT_FILENAME,
options: {
amd: true,
namespace: "templates"
}
}
}
});
grunt.loadNpmTasks('grunt-contrib-handlebars');
grunt.loadNpmTasks('grunt-contrib-watch');
}
有人能给我建议吗 我刚刚想出了一个小小的解决办法。不确定这是否是最好的方法,但它有效
把手:{
编译菜单1:{
src:TEMPLATES_LOCATION+'/Menu1/*'+TEMPLATES_扩展,
dest:TEMPLATES\u OUTPUT\u LOCATION+“菜单1”+TEMPLATES\u OUTPUT\u EXTENSION,
选项:{
是的,
命名空间:“M1_模板”
}
},
编译菜单2:{
src:TEMPLATES_LOCATION+'/Menu2/*'+TEMPLATES_扩展,
dest:TEMPLATES\u OUTPUT\u LOCATION+“Menu2”+TEMPLATES\u OUTPUT\u EXTENSION,
选项:{
是的,
命名空间:“M2_模板”
}
}
}