martesi

Results 7 comments of martesi

目前 react-vtable 还没有直接提供这样的功能,不过如 @luda-dev 提到的那样,你可以间接地使用这样的功能,比如像 #1005 里面一样在 `onStart`(aka `beginEdit`)时创建你需要的编辑器。不过这个例子里的代码需要进行一些调整: - 如果你需要消费 context,你应该使用 [`createPortal`](https://react.dev/reference/react-dom/createPortal) 而不是新建一个 root 节点 - 如果你使用了 [`createRoot`](https://react.dev/reference/react-dom/client/createRoot),你应该在 endEdit 时调用 root 上的 [`unmount`](https://react.dev/reference/react-dom/client/createRoot#root-unmount) 来释放资源 - 如果你使用 react 18-,你应该调用 [`render`](https://react.dev/reference/react-dom/render)...

[背景色](https://visactor.io/vtable/option/ListTable-columns-text#style.bgColor)现在是支持函数来返回颜色,通过这个函数来获取当前单元格的相关信息并为其设置颜色可以满足你的要求吗?

@jaywcjlove Thank you for quick response. In `7.0.0`, the `unmountComponentAtNode` warning is replaced by a new one. ![image](https://github.com/uiwjs/react-amap/assets/96113508/3e9e452f-a1c2-49bb-8003-ca70641a86b2) You can check the demo [here](https://codesandbox.io/p/sandbox/unmountcomponentatnode-react-amap-forked-kfmxlc?workspaceId=ab26bb39-5dd3-4dd3-9b9e-4303a45ff848&layout=%257B%2522sidebarPanel%2522%253A%2522EXPLORER%2522%252C%2522rootPanelGroup%2522%253A%257B%2522direction%2522%253A%2522horizontal%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522id%2522%253A%2522ROOT_LAYOUT%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522cly5hcr2700063j6k3cq1u5vz%2522%252C%2522sizes%2522%253A%255B100%255D%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522EDITOR%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522id%2522%253A%2522cly5hcr2600023j6kkzksbxts%2522%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522SHELLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522id%2522%253A%2522cly5hcr2600033j6kxgsnnieu%2522%257D%255D%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522DEVTOOLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522id%2522%253A%2522cly5hcr2600053j6kric8ll2e%2522%257D%255D%257D%255D%252C%2522sizes%2522%253A%255B50%252C50%255D%257D%252C%2522tabbedPanels%2522%253A%257B%2522cly5hcr2600023j6kkzksbxts%2522%253A%257B%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522cly5hcr2600013j6kecxde6q8%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252Fsrc%252Findex.js%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%252C%257B%2522id%2522%253A%2522cly5hd87900023j6jmckr4z9f%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522initialSelections%2522%253A%255B%257B%2522startLineNumber%2522%253A9%252C%2522startColumn%2522%253A28%252C%2522endLineNumber%2522%253A9%252C%2522endColumn%2522%253A28%257D%255D%252C%2522filepath%2522%253A%2522%252Fpackage.json%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%255D%252C%2522id%2522%253A%2522cly5hcr2600023j6kkzksbxts%2522%252C%2522activeTabId%2522%253A%2522cly5hd87900023j6jmckr4z9f%2522%257D%252C%2522cly5hcr2600053j6kric8ll2e%2522%253A%257B%2522id%2522%253A%2522cly5hcr2600053j6kric8ll2e%2522%252C%2522activeTabId%2522%253A%2522cly5nz1zj001l3j6j01cznlyx%2522%252C%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522cly5hcr2600043j6kb2pwgdfh%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A0%257D%252C%257B%2522type%2522%253A%2522SANDBOX_INFO%2522%252C%2522isCloud%2522%253Afalse%252C%2522id%2522%253A%2522cly5nyo88000p3j6j7w5vafma%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A0%252C%2522id%2522%253A%2522cly5nz1zj001l3j6j01cznlyx%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%255D%257D%252C%2522cly5hcr2600033j6kxgsnnieu%2522%253A%257B%2522tabs%2522%253A%255B%255D%252C%2522id%2522%253A%2522cly5hcr2600033j6kxgsnnieu%2522%257D%257D%252C%2522showDevtools%2522%253Atrue%252C%2522showShells%2522%253Atrue%252C%2522showSidebar%2522%253Atrue%252C%2522sidebarPanelSize%2522%253A15%257D). The original issue is solved, and...

@jaywcjlove see demo [here](https://codesandbox.io/p/sandbox/unmountcomponentatnode-react-amap-7-0-1-gxc96p?layout=%257B%2522sidebarPanel%2522%253A%2522EXPLORER%2522%252C%2522rootPanelGroup%2522%253A%257B%2522direction%2522%253A%2522horizontal%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522id%2522%253A%2522ROOT_LAYOUT%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522cly5hcr2700063j6k3cq1u5vz%2522%252C%2522sizes%2522%253A%255B100%255D%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522EDITOR%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522id%2522%253A%2522cly5hcr2600023j6kkzksbxts%2522%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522SHELLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522id%2522%253A%2522cly5hcr2600033j6kxgsnnieu%2522%257D%255D%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522DEVTOOLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522id%2522%253A%2522cly5hcr2600053j6kric8ll2e%2522%257D%255D%257D%255D%252C%2522sizes%2522%253A%255B50%252C50%255D%257D%252C%2522tabbedPanels%2522%253A%257B%2522cly5hcr2600023j6kkzksbxts%2522%253A%257B%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522cly5hcr2600013j6kecxde6q8%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252Fsrc%252Findex.js%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%252C%257B%2522id%2522%253A%2522cly5hd87900023j6jmckr4z9f%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522initialSelections%2522%253A%255B%257B%2522startLineNumber%2522%253A15%252C%2522startColumn%2522%253A35%252C%2522endLineNumber%2522%253A15%252C%2522endColumn%2522%253A35%257D%255D%252C%2522filepath%2522%253A%2522%252Fpackage.json%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%252C%257B%2522id%2522%253A%2522cly6yeyst00023j6jrfhgwcyo%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522initialSelections%2522%253A%255B%257B%2522startLineNumber%2522%253A16%252C%2522startColumn%2522%253A63%252C%2522endLineNumber%2522%253A16%252C%2522endColumn%2522%253A63%257D%255D%252C%2522filepath%2522%253A%2522%252Fsrc%252FApp.js%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%255D%252C%2522id%2522%253A%2522cly5hcr2600023j6kkzksbxts%2522%252C%2522activeTabId%2522%253A%2522cly6yeyst00023j6jrfhgwcyo%2522%257D%252C%2522cly5hcr2600053j6kric8ll2e%2522%253A%257B%2522id%2522%253A%2522cly5hcr2600053j6kric8ll2e%2522%252C%2522activeTabId%2522%253A%2522cly6ybxt2001l3j6joxg1ww59%2522%252C%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522cly5hcr2600043j6kb2pwgdfh%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A0%257D%252C%257B%2522type%2522%253A%2522SANDBOX_INFO%2522%252C%2522isCloud%2522%253Afalse%252C%2522id%2522%253A%2522cly5nyo88000p3j6j7w5vafma%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A0%252C%2522id%2522%253A%2522cly5nz1zj001l3j6j01cznlyx%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A0%252C%2522id%2522%253A%2522cly6ybxt2001l3j6joxg1ww59%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%255D%257D%252C%2522cly5hcr2600033j6kxgsnnieu%2522%253A%257B%2522tabs%2522%253A%255B%255D%252C%2522id%2522%253A%2522cly5hcr2600033j6kxgsnnieu%2522%257D%257D%252C%2522showDevtools%2522%253Atrue%252C%2522showShells%2522%253Atrue%252C%2522showSidebar%2522%253Atrue%252C%2522sidebarPanelSize%2522%253A15%257D). Click the "forcing update" button then you get a DOMException. ![image](https://github.com/uiwjs/react-amap/assets/96113508/ec4f7fb1-313e-48b5-af49-09479a92b587) Actually, I was thinking maybe we can just use `useEffect` to append our holder to...

@jaywcjlove check demo [here](https://codesandbox.io/p/sandbox/unmountcomponentatnode-react-amap-7-0-1-example-in-7-0-0-j8sxrq?layout=%257B%2522sidebarPanel%2522%253A%2522EXPLORER%2522%252C%2522rootPanelGroup%2522%253A%257B%2522direction%2522%253A%2522horizontal%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522id%2522%253A%2522ROOT_LAYOUT%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522cly5hcr2700063j6k3cq1u5vz%2522%252C%2522sizes%2522%253A%255B100%255D%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522EDITOR%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522id%2522%253A%2522cly5hcr2600023j6kkzksbxts%2522%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522SHELLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522id%2522%253A%2522cly5hcr2600033j6kxgsnnieu%2522%257D%255D%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522DEVTOOLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522id%2522%253A%2522cly5hcr2600053j6kric8ll2e%2522%257D%255D%257D%255D%252C%2522sizes%2522%253A%255B50%252C50%255D%257D%252C%2522tabbedPanels%2522%253A%257B%2522cly5hcr2600023j6kkzksbxts%2522%253A%257B%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522cly5hcr2600013j6kecxde6q8%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522filepath%2522%253A%2522%252Fsrc%252Findex.js%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%252C%257B%2522id%2522%253A%2522cly5hd87900023j6jmckr4z9f%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522initialSelections%2522%253A%255B%257B%2522startLineNumber%2522%253A15%252C%2522startColumn%2522%253A35%252C%2522endLineNumber%2522%253A15%252C%2522endColumn%2522%253A35%257D%255D%252C%2522filepath%2522%253A%2522%252Fpackage.json%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%252C%257B%2522id%2522%253A%2522cly6yeyst00023j6jrfhgwcyo%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522FILE%2522%252C%2522initialSelections%2522%253A%255B%257B%2522startLineNumber%2522%253A23%252C%2522startColumn%2522%253A18%252C%2522endLineNumber%2522%253A23%252C%2522endColumn%2522%253A18%257D%255D%252C%2522filepath%2522%253A%2522%252Fsrc%252FApp.js%2522%252C%2522state%2522%253A%2522IDLE%2522%257D%255D%252C%2522id%2522%253A%2522cly5hcr2600023j6kkzksbxts%2522%252C%2522activeTabId%2522%253A%2522cly6yeyst00023j6jrfhgwcyo%2522%257D%252C%2522cly5hcr2600053j6kric8ll2e%2522%253A%257B%2522id%2522%253A%2522cly5hcr2600053j6kric8ll2e%2522%252C%2522activeTabId%2522%253A%2522cly7aaemf001t3j6j4gvimqf4%2522%252C%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522cly5hcr2600043j6kb2pwgdfh%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A0%257D%252C%257B%2522type%2522%253A%2522SANDBOX_INFO%2522%252C%2522isCloud%2522%253Afalse%252C%2522id%2522%253A%2522cly5nyo88000p3j6j7w5vafma%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A0%252C%2522id%2522%253A%2522cly5nz1zj001l3j6j01cznlyx%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A0%252C%2522id%2522%253A%2522cly6ybxt2001l3j6joxg1ww59%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%252C%257B%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A0%252C%2522id%2522%253A%2522cly7aaemf001t3j6j4gvimqf4%2522%252C%2522mode%2522%253A%2522permanent%2522%257D%255D%257D%252C%2522cly5hcr2600033j6kxgsnnieu%2522%253A%257B%2522tabs%2522%253A%255B%255D%252C%2522id%2522%253A%2522cly5hcr2600033j6kxgsnnieu%2522%257D%257D%252C%2522showDevtools%2522%253Atrue%252C%2522showShells%2522%253Atrue%252C%2522showSidebar%2522%253Atrue%252C%2522sidebarPanelSize%2522%253A15%257D). The same code but pinned version to 7.0.0. Works as expected.

@jaywcjlove try my branch [forcing-refresh-old](https://github.com/martesi/react-amap/tree/example/forcing-refresh-old) and [forcing-refresh-new](https://github.com/martesi/react-amap/tree/example/forcing-refresh-new). I implemented what I mentioned earlier, it seems to work.

I also created a draft PR, maybe this is more convenient for you to try?