两者似乎都不会导致编译错误,但是有什么区别,一个比另一个更可取吗?
组件的渲染方法是否应该具有返回类型 React.ReactNode 或 JSX.Element?
IT技术
reactjs
typescript
2021-05-03 08:51:52
2个回答
在react-typescript-cheatsheet repo issue #57 中提出了这个确切的问题
要引用原来的答案:
不管组件最终呈现什么,
React.createElement
总是返回一个对象,它是JSX.Element
接口,但是React.ReactNode
是组件所有可能的返回值的集合。
JSX.Element
-> 返回值React.createElement
React.ReactNode
-> 组件的返回值
一般来说,我认为这个想法是JSX.Element
专门描述的接口React.createElement
并且范围很窄,而React.ReactNode
更广泛并且涵盖了组件可以返回的所有可能的值。
其它你可能感兴趣的问题