场景

 function testComponent {const ref = useRef(null);.....ref.current.<method>(); // 此处报错return <div ref={ref}>}

报错:类型 never 上不存在属性<method>

思路

never 类型

  1. 当 typeScript 推断,某变量所有类型都不是的时候,将它的类型记为 never
  2. 函数永远不能返回值(不是返回 void )例如函数里面只有一个 exception,这个函数返回值的类型为 never

尝试改成

ref?.current?.<method>();

仍然报错

ref 在定义前使用

我在函数组件返回前使用了ref,这个时候ref还没定义。

使用useCallback(),把render的过程变成一个回调函数,把这个函数写在上面

 function testComponent {const ref = useRef(null);.....const renderTest = useCallback(()=>{return <div ref={ref}>})ref.current.<method>(); // 此处报错return <div>{renderTest()}</div>}

仍然报错

最终解决

原来是 ref 初始化的时候没有加类型
改成

     const ref: any = useRef(null);

就好了
(所以为什么不在初始化的时候报错啊!)

类型 never 上不存在属性相关推荐

  1. angular踩坑:类型“HTMLElement”上不存在属性“selectedIndex”。ts(2339)

    原文链接:https://www.longkui.site/program/frontend/angular-htmlelement/4934/ 0.背景 报错如下: 类型"HTMLElem ...

  2. Angular5 Angular6类型“ObservableResponse”上不存在属性“map”

    Angular5: 类型"Observable<Response>"上不存在属性"map", 引入: import 'rxjs/add/operat ...

  3. 类型“unknown”上不存在属性“foreach”_JavaScript红宝书第四版精简解析系列--映射Map数据类型...

    Map数据类型 顾名思义 也就是映射类型,包含一个[[Entries]]私有特性 我们可以使用一个二维数组作为初始值 const map1 = new Map([[1, 1],[2, 2],[3, 3 ...

  4. ts给Number类型数据添加自定义方法报错:类型“Number”上不存在属性“divideStr”的解决方案

    问题:直接添加方法报错. // 切割字符串或数字,将10000000转换成10,000,000的格式 String.prototype.divideStr = Number.prototype.div ...

  5. vue3中绑定一个点击事件类型出现“{}”上不存在属性问题

    在当前页面添加点击事件总出现这个问题 检查回调事件名字是不是一致 script看看是不是没添加setup

  6. CSSStyleDeclaration 上不存在属性、cssText

    场景 用 ts 给某个 dom 元素增加样式的时候,有时会报错: window.onload = function () {document.body.style.zoom = 0.5; }; 类型& ...

  7. 类型“Window typeof globalThis”上不存在属性“gspZc”

    在做vue+typescript开发过程,给window对象添加属性并赋值,却发现报错,如类型"Window & typeof globalThis"上不存在属性" ...

  8. 解决方案:Vuetify 出现#activator={on,attrs}报错,类型“{ isActive: boolean; props: Record; }”上不存在属性“on”

    #activator或者v-slot:activator报错,不存在属性"on"或者"attrs" 类型"{ isActive: boolean; p ...

  9. 文件上传接受的类型:file的accept属性

    <input id="fileId1" type="file" accept="image/png,image/gif" name=& ...

最新文章

  1. 四川航空签约神策数据,航司沉淀数据价值
  2. maven中spring-boot-dependencies变量名冲突
  3. 假如生活欺骗了你!——Leo网上答疑(14)
  4. 2019山东省赛B - Flipping Game ZOJ - 4114 题解
  5. shell错位_Linux 中纠正拼写错误的Bash 命令方法
  6. Visual Studio怎么使用中文帮助文档
  7. leetcode332. 重新安排行程(dfs)
  8. G - A Bug‘s Life(并查集) acm寒假集训日记22/1/2
  9. 惠普电脑u盘重装系统步骤_hp怎么用u盘重装系统|hp优盘装系统教程
  10. Python如何抓取APP数据?抓包工具Fiddler介绍
  11. 石英晶体振荡器的检定方法
  12. 内网环境下element-template配置element-admin
  13. 如何使用PS修改图片背景
  14. python-----异常处理
  15. OpenGL ES 之uniform和varying
  16. ADB Interface 找不到驱动程序
  17. 华硕路由域名访问_域名绑定ip怎么做?有什么方法?
  18. MX550性能怎么样 mx550 属于什么档次的显卡
  19. 下载频道2013下半年超人气精华资源汇总网址
  20. linux arm 无法执行二进制文件,qemu-arm无法运行arm编译的二进制文件

热门文章

  1. 计算机药学文献检索ppt,药学文献检索报告PPT幻灯片
  2. Oracle 12c 创建与删除CDB、PDBs
  3. java guns框架_GUNS后台管理框架部署与发布
  4. Python操作Excel表格的模块xlrd的简单介绍
  5. 阿里云asp主机 后台登录一直提示验证码错误_温馨提示:欠谁钱,也别欠阿里云的钱!!!...
  6. 如何用手机HTML制作哆啦a梦,CSS3绘制哆啦A梦(带鼠标动画)
  7. 利用搜狗输入法实现多文本复制与粘贴
  8. 我司发哈根达斯,就很人性化
  9. win7由于无法确定计算机,大神搞定win7系统提示由于启动计算机时出现了页面配置问题的图文办法...
  10. python 实现ip分配_Python实现根据IP地址和子网掩码算出网段的方法