我试图传回一个属性,以便在另一条路线的视图中使用。例如,我的contact/user/new
控制器正在执行以下操作:
var newContact = this.get('store').createRecord('contact', contactData);
newContact.save().then((contact) => {
this.transitionToRoute('contacts');
this.set('successMessage', 'You have successfully created a new contact!');
})
.catch((response) => {
response.errors.forEach((error) => {
this.set('errorMessages', error.message);
});
});
除了successMessage
行之外,一切都适合我。
this.set('successMessage', 'You have successfully created a new contact!');
我想在customers
模板上访问它,以便我可以执行以下操作:
{{#if successMessage}}
<div class="success-message">
{{successMessage}}
</div>
{{/if}}
如果有人有任何想法,那就太棒了。
答案 0 :(得分:1)
您可以使用needs
属性声明控制器之间的依赖关系。
所以你必须在你创建记录的控制器中添加它:
needs: 'customers' // Assuming you have a CustomersController somewhere
您可以通过执行以下操作在所需的控制器中设置消息:
this.set('controllers.customers.successMessage', 'Fancy message');