两者似乎都不会导致编译错误,但是有什么区别,一个比另一个更可取吗?
组件的渲染方法是否应该具有返回类型 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.createElementReact.ReactNode-> 组件的返回值
一般来说,我认为这个想法是JSX.Element专门描述的接口React.createElement并且范围很窄,而React.ReactNode更广泛并且涵盖了组件可以返回的所有可能的值。
其它你可能感兴趣的问题