reactjs - 'Element | 类型的参数 null' 不可分配给“元素 |”类型的参数 虚拟元素'
问题描述
在尝试使用 popper 组件时遇到以下错误,只是在努力理解如何正确键入它。文档不清楚,我也没有太多 Typescript 经验。
'Element | 类型的参数 null' 不可分配给“元素 |”类型的参数 虚拟元素'。类型 'null' 不能分配给类型 'Element | VirtualElement'.ts(2345) 常量爆米花:元素 | 无效的
const popcorn = document.querySelector('#popcorn')
const tooltip = document.querySelector('#tooltip')
createPopper(popcorn, tooltip, {
placement: 'top',
})
解决方案
该createPopper
功能要确保popcorn
并且tooltip
两者实际上都是元素。由于querySelector
可以返回(如果没有元素存在) ,只需在调用它们之前null
检查以确保它们不为空。popcorn
tooltip
createPopper
const popcorn = document.querySelector('#popcorn')
const tooltip = document.querySelector('#tooltip')
if (popcorn && tooltip) {
createPopper(popcorn, tooltip, { placement: 'top' })
}
推荐阅读
- python - django-admin 打开一个新项目
- typescript - 来自嵌套对象的 TypeScript 模板文字字符串
- python - 从坐标标签计算 xarray 数据数组
- sql-server - sql server 使用recrusive cte获取同组中的级别
- javascript - Fullcalendar 无法解析本地 JSON
- reactjs - Material UI datetime-local 输入打开日历下拉菜单
- github - 为代码审查拉取请求创建 GitHub 操作分支
- javascript - 让孩子行展开和可编辑的单元格
- image - 将图像添加到markdownfile
- python - 计算某个日期列之前的交易总额和频率