0
在我gulpfile我定義對象的MemberInfo陣列傳遞到模板:把手JS對象迭代
var gulp = require('gulp');
var handlebars = require('gulp-compile-handlebars');
var rename = require('gulp-rename');
var handlebars_helpers = require('handlebars-helpers')();
//http://assemble.io/helpers/helpers-html.html
var _ = require('underscore');
gulp.task('default', function() {
var templateData = {
memberInfo: [
{"member_email": "[email protected]", "list_id": "2", "name": "obsession cologne 3 oz", "brand": "", "price": "55.99"},
{"member_email": "[email protected]", "list_id": "1", "name": "red plaid skirt", "brand": "versace", "price": "55.99"},
{"member_email": "[email protected]", "list_id": "1", "name": "black ruffle shirt", "brand": "versace", "price": "47.99"},
]
}
options = {
helpers: _.extend(handlebars_helpers)
}
return gulp.src('template/email.handlebars')
.pipe(handlebars(templateData, options))
.pipe(rename('email.html'))
.pipe(gulp.dest('output'));
}
我想在我的模板做的是說「對的MemberInfo每個對象,如果list_id等於1,顯示這些字段「
{{name}}
{{brand}}
{{price}}
這樣做的正確方法是什麼?我是全新的吞嚥和車把,我發現的解釋在這方面似乎沒有任何意義。車把傭工有一個漂亮的比較操作{{#is }}
所以我寫了這個代碼,但它顯然是不正確設置:
<ul>
{{#each memberInfo}}
{{#each this}}
<li>Key: {{@key}} Value = {{this}}</li>
{{#is @key 'list_id' }}
{{#is this 1 }}
{{name}}
{{brand}}
{{price}}
//Nothing is accessible here except this, as far as i can tell, so none of these values render
{{/is}}
{{/is}}
{{/each}}
{{/each}}
</ul>