未定义的React Ant模态道具

时间:2018-10-04 15:05:04

标签: reactjs redux antd react-props

我正在使用ant design modal。当我在确认对话框中单击确定时。我收到类似props of undefined的错误,就像我在外界确认时可以正常使用一样。

代码:

confirm({
    title: 'Do you Want to delete these items?',
    content: 'Some descriptions',
    onOk() {
      this.props.actions.delete()
    },
    onCancel() {
      console.log('Cancel');
    },
  });

错误

  

TypeError:无法读取未定义的属性“ props”

演示: https://codesandbox.io/s/k94004l1wv

3 个答案:

答案 0 :(得分:2)

在codeSandbox中看不到this.props.actions.delete。但是我想纠正你的做事方式

看看您的corrected sandboc,以更好地了解在做事上的反应

答案 1 :(得分:2)

是的,可以通过使其具有以下箭头功能来解决:

- name: "2. check existance of file"
  stat:
    path: "{{item}}/file.log"
  with_items: "{{directory.stdout_lines}}"
  register: checkfile

- debug:
    msg: "file name {{item}} exists"
    with_items: "{{checkfile.results}}"
    when: item.stat.exists

答案 2 :(得分:0)

尽管另一个答案被标记为已接受,但我认为它不能解决真正的问题。问题是onOk(和onCancel)函数未绑定。 this的值为undefined。通过显式绑定类引用.bind(this)或用箭头函数替换onOk来解决此问题,箭头函数将从外部作用域中提取this

另请参阅:https://github.com/ant-design/ant-design/issues/5269#issuecomment-347836625