Ember プロジェクトでExpress のconnect-assetsを使用しています。connect-assets
ハンドルバーのテンプレートを適切にプリコンパイルするのに苦労しています。
次のようにエクスプレスを設定しました:
app.use(assets({
src: app_root + 'app',
buildDir: './public',
jsCompilers: {
hbs: hbsAssets
}
}));
そして、次のhbsAssets
とおりです。
module.exports = {
match: /\.js$/,
compileSync: function(sourcePath, source) {
var match = sourcePath.match(/^.*\/app\/js\/templates\/(.+)\.hbs/)
, templateName = match[1];
var filename = path.basename(sourcePath, '.hbs')
, js = handlebars.precompile(source).toString();
return 'Ember.TEMPLATES' + '["' + templateName + '"] = Handlebars.template(' + js + ');';
}
};
問題は、hbs レイアウトのみがレンダリングされ、{{outlet}}
s が挿入されないことです。
どんな助けでもいただければ幸いです