You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复TypeScript错误:useRef传参时类型无'current'属性?

解决TypeScript中ref的'current'属性不存在错误

问题根源

你给ChatInputBar的scroll参数定义了HTMLDivElement类型,但父组件传的是useRef创建的Ref对象(不是DOM元素本身)。TypeScript把这个参数误识别成了DOM元素的scroll方法(HTMLDivElement自带scroll方法),所以会提示找不到current属性。

修正方案

把子组件的参数类型改成{ scroll: React.RefObject<HTMLDivElement> },同时建议判断current是否存在,避免空值报错:

import React from 'react';

export const ChatInputBar = ({ scroll }: { scroll: React.RefObject<HTMLDivElement> }) => {
  const handleSendMessage = async () => {
    if (scroll.current) {
      scroll.current.scrollIntoView({ behavior: "smooth" });
    }
  };

  // 其他组件代码...
  return <div>ChatInputBar</div>;
};

额外说明

父组件的代码没有问题,useRef<HTMLDivElement>(null)的类型定义是正确的,只需修正子组件的类型声明即可解决报错。

内容的提问来源于stack exchange,提问作者user21209760

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 07:40:02