无法找到反应通知

时间:2016-10-17 02:47:03

标签: reactjs notifications

目前正致力于实施反应通知,但遇到了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
},

1 个答案:

答案 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。因此,我建议添加支票而不是删除它。

祝你好运!