TS报错:You may need an additional loader to handle the result of these loaders.

在Vue3项目中,使用ref获取元素并尝试添加classList时遇到错误。问题在于TypeScript无法确定document.querySelector返回的元素类型。解决方法是对查询结果进行类型断言,如`(document.querySelector('.advanced-filter') as HTMLElement).classList`,从而可以正常访问classList属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

vue3项目:获取HTML元素的classList时,ref模板引用成功获取 ,document.querySelector能获取元素,但获取classList时报错

const advancedFilter = ref();
advancedFilter.value.classList.add('active');
console.log(document.querySelector('.advanced-filter')); //成功获取到HTML元素
console.log(document.querySelector('.advanced-filter')?.classList); // 报错

 成功获取到元素

 

从元素获取classList时报错

报错详情

原因:TS无法确定获取到的数据类型

 解决方式:TS类型断言

console.log((document.querySelector('.advanced-filter') as HTMLElement).classList);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值