Ember.js 从管线更新组件显示
为了了解有关使用服务和组件的更多信息,我正在尝试设置一个简单的flash消息样式服务。在我的路由中,我保存了一条记录,并从服务器接收到json通知或json错误 因为这是我最终希望在应用程序范围内使用的行为,所以我使用一个简单的服务注入到我的路由中来处理消息的显示。在一个路由中,我可以调用这个。获取“通知”。显示消息消息消息 目前,服务中的displayMessage函数只是提醒消息,因为我一直在研究如何创建服务可以更新的组件。服务如何与组件通信,以便我可以从组件模板发送消息并显示它 简介/索引路线 服务 组成部分 组件模板Ember.js 从管线更新组件显示,ember.js,ember-cli,Ember.js,Ember Cli,为了了解有关使用服务和组件的更多信息,我正在尝试设置一个简单的flash消息样式服务。在我的路由中,我保存了一条记录,并从服务器接收到json通知或json错误 因为这是我最终希望在应用程序范围内使用的行为,所以我使用一个简单的服务注入到我的路由中来处理消息的显示。在一个路由中,我可以调用这个。获取“通知”。显示消息消息消息 目前,服务中的displayMessage函数只是提醒消息,因为我一直在研究如何创建服务可以更新的组件。服务如何与组件通信,以便我可以从组件模板发送消息并显示它 简介/索引
在访问服务方面,我喜欢他们使用文档的例子: ShoppingCart服务被注入到需要访问购物车的组件中 访问ShoppingCart后,您应该能够: 从路由错误捕获为用户设置服务中的通知。 基于Notification service在组件hasError上设置某种hasNotification方法,该方法可以切换错误消息。 一旦您设置了通知,您的组件将看到它正在监视的属性已更改,并将显示/隐藏您的通知
user.save().then( (response) => {
//display response.notice in the app-notification component template
}, (response) => {
let errors = JSON.parse(response.errors);
//display response.error in the app-notification component template
this.get('notification').displayMessage(errors[0]);
}
import Ember from 'ember';
const { Service } = Ember;
export default Service.extend({
displayMessage(msg) {
alert("message ---> " + msg);
}
});
???
<h2 class="alert">{{message}}</h2>
{{app-notification message=message}}