我正在寻找像rails这样的emberjs中不同布局文件的实现 例如,主应用程序具有“application_layout.hbs”,登录页面具有不同的应用程序。 “login_layout.hbs”例如。
答案 0 :(得分:0)
我自己没有实现它,但这可能是你正在寻找的,取自ember source code
视图可以有一个包装其主模板的辅助模板。喜欢 主模板,布局可以是任何接受可选项的函数 context参数并返回将插入其中的HTML字符串 查看标签。 HTML元素自动关闭的视图(例如
<input />
) 不能有布局,这个属性将被忽略。 最常见的是在Ember中,布局将是一个编译的Ember.Handlebars
模板。可以使用layout
属性或引用直接设置视图的布局 具有layoutName
属性的现有Handlebars模板。 用作布局的模板必须包含一次使用Handlebars{{yield}}
帮助者。呈现template
的视图的HTML内容将是 插入此位置:
<强> JS 强>
AViewWithLayout = Ember.View.extend({
layout: Ember.Handlebars.compile("<div class='my-decorative-class'>{{yield}}</div>")
template: Ember.Handlebars.compile("I got wrapped"),
});
希望有所帮助