javascript - 在 React Component 中监听 window.onmessage
问题描述
我正在尝试在我的反应课程中收听帖子消息。它不工作。
export default class App extends React.Component {
constructor(props) {
super(props);
this.handleMessage = this.handleMessage.bind(this);
}
componentDidMount(){
window.addEventListener("onmessage", this.handleMessage);
}
componentWillUnmount() {
window.removeEventListener('onmessage', this.handleMessage);
}
handleMessage(e){
console.log('me?')
}
}
我这样发送消息:
window.opener.postMessage('a message', '*');
我知道消息正在到达窗口,因为我可以在加载反应应用程序的纯 JS 文件中成功收听它。但是,在上面的反应中听它不起作用。
为什么我的监听器不是每次都被触发,我该如何调试它?
解决方案
推荐阅读
- java - 如何将一个 json 转换为 TestResult
- swift - Json数组字典在swift 5中解析nil
- c# - 使用 MissingMemberHandling.Error 反序列化时不会忽略具有 JsonIgnore 属性的属性
- sql - 无法加载文件或程序集 microsoft.sqlserver.management.sdk.sfc 版本=11.0.0.0 文化=中性 publickeytoken
- php - Codeigniter 无法从购物车中检索数据
- mysql - 在 SQL 之间选择日期。其中日期的格式为 dd/mm/yyyy 并且是一个字符串
- javascript - Gulp 为什么单个文件类型在括号中不起作用
- python - 使用 beautifulsoup 抓取数据
- jquery - 使用 jQuery 选择多个 ID 时遇到问题
- android - android模板合并build.gradle:底部添加了“应用插件”