React中以下语句的类型是什么?
let element = <div>Blah blah</div>
我以为我可以使用element: HTMLElement
但是当我这样做时,我会Property 'accessKey' is missing in type 'Element'
。
另一个导入组件怎么样?
import Row from './partials/Row';
let row = <Row cols={cols} />
答案 0 :(得分:0)
div jsx元素的类型是HTMLFactory<HTMLDivElement>
。
您拥有的引用不是浏览器中的实际dom元素,而是代表可能尚未呈现的元素的react元素。
应通过道具访问html属性:
let element = <div>Blah blah</div>
console.log(element.props.accessKey);
如果您想获取dom元素,可以使用ref attribute:
当ref元素用于HTML元素时,ref回调 接收底层DOM元素作为其参数
所以:
let divElement: HTMLDivElement;
let element = <div ref={ (el) => { divElement = el; console.log(el); } }>Blah blah</div>
对于导入的Row
,您再次引用具有dom表示的react元素。
它具有哪些属性或方法取决于类本身。