目前正致力于实施反应通知,但遇到了Cannot read property 'preventDefault' of undefined
的错误,我认为这意味着传递给_addNotification的事件未定义。
_handleSuccess: function(data, status, jqXHR) {
this._addNotification()
this.setState({
errors: {},
loading: false
});
},
_notificationSystem: null,
_addNotification: function(event) {
event.preventDefault()
this._notificationSystem.addNotification({
message: 'Notification message',
level: 'success',
position: 'bc'
});
},
_componentDidMount: function() {
this._notificationSystem = this.refs.notificationSystem;
},
_getNotificationSystemInstance: function() {
return this
},
答案 0 :(得分:2)
这里的问题是你在没有任何参数的情况下调用_addNotification
,这个函数预计会有event
个参数。
在我看来,您正在从API服务加载数据,如果您没有该案例的event
对象,那么您要么删除{{1或者在调用event.preventDefault()
函数之前检查event
是否存在。
preventDefault
如果您是通过按钮或链接呼叫_addNotification: function(event) {
event && event.preventDefault(); // <--- Check if event exist!
this._notificationSystem.addNotification({
message: 'Notification message',
level: 'success',
position: 'bc'
});
},
,则需要致电_addNotification
。因此,我建议添加支票而不是删除它。