"version": "0.2.2",
This config works fine:
template: {
options: {
data: {
componentID: componentID,
componentName: componentName,
componentCapitalized: componentCapitalized,
componentUnderscored: componentUnderscored
}
},
'README.md' : {
files: {
'README.md': [ 'README.md.tpl']
}
},
'docs/README.md' : {
files: {
'docs/README.md': [ 'README.md.tpl']
}
}
}
Or this silly config, also work:
template: {
'README.md' : {
options: {
data: {
componentID: componentID,
componentName: componentName,
componentCapitalized: componentCapitalized,
componentUnderscored: componentUnderscored,
docsDir: 'docs',
mainPage: true
}
},
files: {
'README.md': [ 'README.md.tpl']
}
},
'docs/README.md' : {
options: {
data: {
componentID: componentID,
componentName: componentName,
componentCapitalized: componentCapitalized,
componentUnderscored: componentUnderscored,
docsDir: '.',
mainPage: false
}
},
files: {
'docs/README.md': [ 'README.md.tpl']
}
}
}
But this doesn't work:
template: {
options: {
data: {
componentID: componentID,
componentName: componentName,
componentCapitalized: componentCapitalized,
componentUnderscored: componentUnderscored
}
},
'README.md' : {
options: {
data: {
docsDir: 'docs',
mainPage: true
}
},
files: {
'README.md': [ 'README.md.tpl']
}
},
'docs/README.md' : {
options: {
data: {
docsDir: '.',
mainPage: false
}
},
files: {
'docs/README.md': [ 'README.md.tpl']
}
}
}
So as you see, I want to extract common options from target level to task level, and leave target options ability to override task options. Is is this expected order of overriding in grunt options at all?
I run simply: grunt template
and it gives me:
$ grunt template
Running "template:README.md" (template) task
Warning: An error occurred while processing a template (componentName is not def
ined). Use --force to continue.
or similar ...
Simply, target options override task options, and they just disappear.
Or Am I mistaken somewhere?
Should I play with grunt.registerTask() vs. grunt.registerMultitaskTask() ?