reactjs - 如何在reactjs中的cellrenderer中添加模态
问题描述
cellRenderer: (params) => {
var eDiv = document.createElement('div');
eDiv.innerHTML = '<b><div style="overflow:unset"><div class="btn-group btn-group-sm"><button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-toggle="dropdown" aria-expanded="true"><span class="icon"><i class="fas fa-ellipsis-v-alt" aria-hidden="true"></i></span></button></div></div></b>';
var eButton = eDiv.querySelectorAll(".icon")[0];
eButton.addEventListener('click', (e) => {
alert("aaaaaaaaaaaaaaaaaa")
});
return eDiv;
}
解决方案
你应该使用 ReactDom.createPortal API
在反应文档中有很好的解释
https://reactjs.org/docs/portals.html
此外,这里显示了一个很好的实现 https://medium.com/@imranhsayed/create-modal-in-react-using-portal-48b3662a28b9
推荐阅读
- makefile - GNU Make:定义一个永远不会导入的局部变量?
- sql - 合并和删除 jsonb 中的重复项 - PostgreSQL
- postgresql - JSON vs JSONB Postgresql
- git - 设置远程 url 不更改为 https
- nuxt.js - 如果传递了“上下文”,如何在 Nuxt 的 fetch() 钩子中访问“this”?
- flutter - 参数类型'列表
?不能分配给参数类型“列表” ' - ios - SwiftUI:macOS 应用程序的 fullScreenCover 等效项?
- python - 如何在没有索引的情况下将 Pandas 数据框打印到 Latex?
- r - 在 R 的一个方面用两个可能的选项重新排序 x 轴
- c++ - 未定义模板的隐式实例化:g++ 或 clang++