Javascript TypeError:this.props不是handleCHange事件上的函数

Javascript TypeError:this.props不是handleCHange事件上的函数,javascript,reactjs,material-ui,Javascript,Reactjs,Material Ui,我在这里浏览了很多关于这个主题的问题的答案,我想我已经做了我应该做的一切,但不知怎么的,它不起作用 下面是引发错误的代码的独立部分: import React from 'react'; import Switchbookmarks from './switch'; class App extends React.Component { test(str){ console.log(str) } render(){ return ( <div c

我在这里浏览了很多关于这个主题的问题的答案,我想我已经做了我应该做的一切,但不知怎么的,它不起作用

下面是引发错误的代码的独立部分:

import React from 'react';
import Switchbookmarks from './switch';

class App extends React.Component {
  test(str){
    console.log(str)
  }
  render(){
  return (
    
    <div className="App">
      <Switchbookmarks>test={this.test.bind(this)}</Switchbookmarks>
    </div>
  );
}
}

export default App;

我做错了什么,或者有没有其他方法可以做到这一点?

我很有信心你不能像以前那样约束自己。您应该绑定构造并将道具作为“this.test”传递,或者简单地将测试函数更改为arrow函数,然后测试道具 编辑:我甚至不认为你需要绑定任何东西。只需作为道具通过测试

test = (str) => {
    console.log(str)
  }
.....
<Switchbookmarks test={this.test}></Switchbookmarks>
test=(str)=>{
console.log(str)
}
.....
test={this.test.bind(this)}
您是否看到关闭的
?这可能是个问题


您对
切换书签
组件的操作是正确的,但您决定对
应用程序
组件执行不同的操作。使用与
切换书签相同的方法进行
绑定
或使用
箭头语法
进行
测试
方法,然后只需使用
this.test
。另外
test={this.test.bind(this)}
无效,您在这里到底想做什么?是的,对不起,我复制了他的示例并更改了它。
TypeError: this.props.test is not a function.
test = (str) => {
    console.log(str)
  }
.....
<Switchbookmarks test={this.test}></Switchbookmarks>