1
在Ember 2.2 Canary中將初始屬性傳遞給可路由組件的首選方式是什麼?Ember 2可路由組件
在RFC(https://github.com/ef4/rfcs/blob/routeable-components/active/0000-routeable-components.md#specifying-component-attributes)中描述的方式似乎不起作用。
在Ember 2.2 Canary中將初始屬性傳遞給可路由組件的首選方式是什麼?Ember 2可路由組件
在RFC(https://github.com/ef4/rfcs/blob/routeable-components/active/0000-routeable-components.md#specifying-component-attributes)中描述的方式似乎不起作用。
編輯:有一個插件,使路由組件灰燼2.7及更高版本:https://github.com/mdehoog/ember-routable-components-shim
目前只有路由組件RFC的一小部分在灰燼金絲雀實現。 attributes
掛鉤尚未實現。傳遞給可路由組件的唯一東西是從model
鉤子返回的模型。
下面是一個示例實現:
創建路由組件(而不是控制器)。它必須是一個isGlimmerComponent
:
// components/post.js
import Ember from 'ember';
export default Ember.Component.extend({
isGlimmerComponent: true,
componentProperty: 'componentValue'
});
創建路由組件模板:
{{!-- templates/components/post.hbs --}}
Model property: {{model.modelProperty}}<br/>
Component property: {{componentProperty}}
創建呈現您的路由部件的路由:
// routes/post.js
import Ember from 'ember';
export default Ember.Route.extend({
renderTemplate: function() {
this.render({component: this.routeName}); //or you can explicitly name your component here
},
model: function() {
return {
modelProperty: 'modelValue'
};
}
});
路由添加到路由器.js正常:
// router.js
Router.map(function() {
this.route('post', { path: '/post' });
});
訪問/發佈現在應該呈現您的可路由組件。