Generator 使用Assembly定义新布局,并将生成的文件保留为与默认布局相同的目录
您好,我创建应用程序,我需要定义新的布局,现在我在grunt文件中使用此代码Generator 使用Assembly定义新布局,并将生成的文件保留为与默认布局相同的目录,generator,assemble,Generator,Assemble,您好,我创建应用程序,我需要定义新的布局,现在我在grunt文件中使用此代码 assemble: { pages: { options: { flatten: true, assets: '<%= config.dist %>/assets', layout: '<%= config.src %>/templates/layouts/default.hbs', data: '<%= config.src %
assemble: {
pages: {
options: {
flatten: true,
assets: '<%= config.dist %>/assets',
layout: '<%= config.src %>/templates/layouts/default.hbs',
data: '<%= config.src %>/data/*.{json,yml}',
partials: '<%= config.src %>/templates/partials/{,*/}*.hbs'
},
files: {
'<%= config.dist %>/': ['<%= config.src %>/templates/pages/*.hbs']
}
}
},
汇编:{
页码:{
选项:{
扁平化:是的,
资产:'/assets',
布局:'/templates/layouts/default.hbs',
数据:'/data/*.{json,yml}',
分部:'/templates/partials/{,*/}*.hbs'
},
档案:{
“/”:[”/templates/pages/*.hbs']
}
}
},
现在我读了文档,把Nessery的代码写成这样
assemble: {
pages: {
options: {
flatten: true,
assets: '<%= config.dist %>/assets',
layout: '<%= config.src %>/templates/layouts/default.hbs',
data: '<%= config.src %>/data/*.{json,yml}',
partials: '<%= config.src %>/templates/partials/{,*/}*.hbs'
},
files: {
'<%= config.dist %>/': ['<%= config.src %>/templates/pages/*.hbs']
}
},
simple: {
options: {
assets: '<%= config.dist %>/assets',
layout: '<%= config.src %>/templates/layouts/simple.hbs',
data: '<%= config.src %>/data/*.{json,yml}',
partials: '<%= config.src %>/templates/partials/{,}*.hbs'
},
files: {
'<%= config.dist %>/': ['<%= config.src %>/templates/pages/simple/*.hbs']
}
}
},
汇编:{
页码:{
选项:{
扁平化:是的,
资产:'/assets',
布局:'/templates/layouts/default.hbs',
数据:'/data/*.{json,yml}',
分部:'/templates/partials/{,*/}*.hbs'
},
档案:{
“/”:[”/templates/pages/*.hbs']
}
},
简单:{
选项:{
资产:'/assets',
布局:'/templates/layouts/simple.hbs',
数据:'/data/*.{json,yml}',
分部:'/templates/partials/{,}*.hbs'
},
档案:{
“/”:[”/templates/pages/simple/*.hbs']
}
}
},
基本上,我声明新布局简单,并尝试强制生成的模板位于同一目录中,但结果是-dist/src/templates/pages/simple/name\u of_file.html
此代码在默认情况下工作,但在其他布局中不工作
有什么帮助吗?这是可能的,我有解决办法,但会很高兴把这件事完成
不管怎样,我找到了解决办法
assemble: {
pages: {
options: {
flatten: false,
expand: true,
assets: '<%= config.dist %>/assets',
layout: '<%= config.src %>/templates/layouts/default.hbs',
data: '<%= config.src %>/data/*.{json,yml}',
partials: '<%= config.src %>/templates/partials/{,*/}*.hbs'
},
files: [
{expand: true, cwd: '<%= config.src %>/templates/pages/', src: '**/*.hbs', dest: '<%= config.dist %>/', ext: '.html'}
]
},
simple: {
options: {
assets: '<%= config.dist %>/assets',
layout: '<%= config.src %>/templates/layouts/simple.hbs'
},
files: [
{expand: true, cwd: '<%= config.src %>/templates/pages/simple/', src: '**/*.hbs', dest: '<%= config.dist %>/', ext: '.html'}
]
}
},
汇编:{
页码:{
选项:{
扁平化:错误,
是的,
资产:'/assets',
布局:'/templates/layouts/default.hbs',
数据:'/data/*.{json,yml}',
分部:'/templates/partials/{,*/}*.hbs'
},
档案:[
{expand:true,cwd:'/templates/pages/',src:'***.hbs',dest:'/',ext:'.html'}
]
},
简单:{
选项:{
资产:'/assets',
布局:'/templates/layouts/simple.hbs'
},
档案:[
{expand:true,cwd:'/templates/pages/simple/',src:'***.hbs',dest:'/',ext:'.html'}
]
}
},
我找到了一个解决方案,答案就在这里
assemble: {
pages: {
options: {
flatten: false,
expand: true,
assets: '<%= config.dist %>/assets',
layout: '<%= config.src %>/templates/layouts/default.hbs',
data: '<%= config.src %>/data/*.{json,yml}',
partials: '<%= config.src %>/templates/partials/{,*/}*.hbs'
},
files: [
{expand: true, cwd: '<%= config.src %>/templates/pages/', src: '**/*.hbs', dest: '<%= config.dist %>/', ext: '.html'}
]
},
error: {
options: {
flatten: false,
assets: '<%= config.dist %>/assets',
data: '<%= config.src %>/data/*.{json,yml}',
layout: '<%= config.src %>/templates/layouts/error.hbs'
},
files: [
{expand: true, cwd: '<%= config.src %>/templates/error-pages/', src: '**/*.hbs', dest: '<%= config.dist %>/', ext: '.html'}
]
},
login: {
options: {
flatten: false,
assets: '<%= config.dist %>/assets',
data: '<%= config.src %>/data/*.{json,yml}',
layout: '<%= config.src %>/templates/layouts/login.hbs'
},
files: [
{expand: true, cwd: '<%= config.src %>/templates/login-pages/', src: '**/*.hbs', dest: '<%= config.dist %>/', ext: '.html'}
]
}
汇编:{
页码:{
选项:{
扁平化:错误,
是的,
资产:'/assets',
布局:'/templates/layouts/default.hbs',
数据:'/data/*.{json,yml}',
分部:'/templates/partials/{,*/}*.hbs'
},
档案:[
{expand:true,cwd:'/templates/pages/',src:'***.hbs',dest:'/',ext:'.html'}
]
},
错误:{
选项:{
扁平化:错误,
资产:'/assets',
数据:'/data/*.{json,yml}',
布局:'/templates/layouts/error.hbs'
},
档案:[
{expand:true,cwd:'/templates/error pages/',src:'***.hbs',dest:'/',ext:'.html'}
]
},
登录:{
选项:{
扁平化:错误,
资产:'/assets',
数据:'/data/*.{json,yml}',
布局:'/templates/layouts/login.hbs'
},
档案:[
{expand:true,cwd:'/templates/login pages/',src:'***.hbs',dest:'/',ext:'.html'}
]
}
我创建了两个新布局,一个用于错误页面,另一个用于登录页面。所有页面都在同一目录中生成。如果您愿意,可以将解决方案作为答案发布,如果没有人发布更好的解决方案,则只需将其标记为正确。当然,我只需等待8小时,因为网站有规则。