react-admin 中的 showNotification 不起作用 [英] showNotification in react-admin doesn't work

查看:29
本文介绍了react-admin 中的 showNotification 不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

1.从生命周期回调中调用.我有如下代码:

// app.js
<Admin>
   <Resource name="FooList" list={FooList} />
</Admin>

// FooList.js
class FooList extends React.Component {
     componentDidMount () {
         showNotification("foo")
     }
}

export default connect(null, {showNotification})(FooList)

组件挂载时,控制台出现错误:

When component get mounted, an error in console appeared:

 Warning: React does not recognize the `showNotification` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `shownotification` instead. If you accidentally passed it from a parent component, remove it from the DOM element.

2.调用某个事件(例如点击). 在其他情况下,我有一些处理程序并在其中调用 showNotification.

2. Call on some event (e.g. click). In other case I have some handler and call showNotification in it.

class Foo extends React.component {
   handleClick = () => {
      showNotification('Hello, World')
   }
}

export default connect(null, { showNotification })(Foo)

在这种情况下handleClick被调用,但没有出现通知,但控制台没有错误

In this case handleClick is called, but notification doesn't appeared, but there are NO errors in console

Bellow 是我对项目的依赖

Bellow is my dependencies of the project

"dependencies": {
  "@material-ui/core": "1.5.1",
  "@material-ui/icons": "3.0.1",
  "apollo-boost": "^0.1.22",
  "apollo-link-schema": "^1.1.2",
  "graphql": "^14.0.2",
  "graphql-tag": "^2.10.0",
  "graphql-tag.macro": "^2.0.0",
  "graphql-tools": "^4.0.3",
  "graphql.macro": "^1.0.2",
  "material-ui": "^0.20.2",
  "ra-core": "^2.4.3",
  "ra-data-graphql": "^2.4.3",
  "react": "^16.3.2",
  "react-admin": "^2.4.3",
  "react-dom": "^16.3.3",
  "react-material-ui-form-validator": "^2.0.2",
  "react-scripts": "^2.1.1",
  "redux": "^4.0.1",
  "redux-thunk": "^2.3.0",
  "seamless-immutable": "^7.1.4"
}

如何在 react-admin 应用中显示通知?我错过了什么?

How can I show notification in react-admin app? What I've missed?

推荐答案

Action dispatchers 作为组件的属性传入,因此名称 mapDispatchToProps.因此,要调用动作调度程序,您将使用 this.props.showNotification('Hello, World')

Action dispatchers are passed in as properties on the component, thus the name mapDispatchToProps. Therefore to call an action dispatcher, you would use this.props.showNotification('Hello, World')

这篇关于react-admin 中的 showNotification 不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆