0
在我的Ember应用程序中,我有一个属性,我在父组件的init()
方法内创建了一个属性。我想把它传递给孩子。Ember将在父组件内创建的属性传递给子组件
// app/component/parent.js
import Ember from 'ember';
import ParentProperty from 'somewhere';
export default Ember.Component.extend({
init() {
this._super(...arguments);
let model = this.get('model');
let moreData = this.get('moreData');
this.parentProperty = new ParentProperty(model, moreData);
}
click(e) {
this.get('moreData').doSomthing();
}
});
// app/component/application.hbs
{{#parent model=model moreData=moreData}}
// Here, I want to pass the `parentProperty` created
// in the init of the parent component.
{{child parentProperty=parent.parentProperty}}
{{/parent}}
我知道我可以使用{{with}}
助手创建ParentProperty,包裹父母和孩子,并把它传递到他们两个,但是这不是我想做的事情。这可能吗?
此模板是您的路线模板,而不是您的父母组件模板,对吗?而且你无法从外部访问组件的属性。但是,您可以将它传递给'yield'助手来公开它。 – Lux
对,就是路线模板。我编辑了这个问题。我将如何从收益帮手中揭露它? – CookieMonster