我有 index.html
<body>
<div id="portal"></div>
<div id="root"></div>
</body>
并希望在 portal div
而不是 root div
中单独使用以下组件,
import React from 'react';
const portalDiv = document.getElementById('portal');
function Portal1(props) {
return ReactDOM.createPortal(
<div>
{props.children}
<div/>,
portalDiv); //here
}
export default Portal1;
但我收到此错误, 类型为“HTMLElement | 的参数” null’ 不可分配给“元素”类型的参数。类型 ‘null’ 不能分配给 VScode 中的类型 ‘Element’.ts(2345) 。
我正在使用打字稿。
原文由 kishore 发布,翻译遵循 CC BY-SA 4.0 许可协议
其他人回答说您应该添加一个空检查,但是 Typescript 也有一个非空断言,当您通过在末尾添加
!
运算符 确定 该值永远不会为空时,您可以使用该断言你的陈述: