gpt4 book ai didi

solid-js - Solid JSX 中的动态标签名称

转载 作者:行者123 更新时间:2023-12-02 15:51:33 31 4
gpt4 key购买 nike

我想在 SolidJS 中动态设置 JSX 标签名称。我来自 React it is fairly simple to do :

/* Working ReactJS Code: */
export default MyWrapper = ({ children, ..attributes }) => {
const Element = "div";

return (
<Element {...attributes}>
{children}
</Element>
)
}

但是当我尝试在 SolidJS 中做同样的事情时,我得到以下错误:

/* Console output when trying to do the same in SolidJS: */
dev.js:530 Uncaught (in promise) TypeError: Comp is not a function
at dev.js:530:12
at untrack (dev.js:436:12)
at Object.fn (dev.js:526:37)
at runComputation (dev.js:706:22)
at updateComputation (dev.js:691:3)
at devComponent (dev.js:537:3)
at createComponent (dev.js:1236:10)
at get children [as children] (Input.jsx:38:5)
at _Hot$$Label (Input.jsx:7:24)
at @solid-refresh:10:42

我想知道我是否遗漏了什么,或者是否有可能以任何其他方式在 SolidJS 中实现这一点。

最佳答案

Solid 有一个 <Dynamic>该用途的辅助组件。

import {Dynamic} from "solid-js/web";

<Dynamic component="div" {...attributes}>
{props.children}
</Dynamic>

关于solid-js - Solid JSX 中的动态标签名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72443438/

31 4 0