相关文章推荐
悲伤的鸭蛋  ·  antd 里常用的 TypeScript ...·  1 周前    · 
安静的饭盒  ·  Typescript: ...·  1 周前    · 
要出家的灭火器  ·  如何在Visual ...·  8 月前    · 
个性的山楂  ·  PyQt5 - 知乎·  9 月前    · 
慈祥的核桃  ·  qt ...·  1 年前    · 
首页
学习
活动
专区
工具
TVP
最新优惠活动
发布
精选内容/技术社群/优惠产品, 尽在小程序
立即前往

TS2339: never类型上不存在属性“getBoundingClientRect”

TS2339是TypeScript编译器的一个错误代码,表示在never类型上不存在属性“getBoundingClientRect”。

never类型是TypeScript中的底层类型,表示永远不会发生的值。它通常用于表示函数的返回类型,当函数抛出异常或者永远不会返回时,返回类型可以标注为never。

属性“getBoundingClientRect”是DOM API中的一个方法,用于获取元素的大小及其相对于视口的位置。然而,由于never类型表示永远不会发生的值,因此无法调用该类型上的方法或访问其属性。

在解决这个错误时,需要检查代码中的类型推断或类型注解是否正确。确保变量或表达式的类型不是never类型,以便可以安全地调用“getBoundingClientRect”方法。

需要注意的是,以上答案是基于给定的错误代码和问题描述,如果有更多上下文信息或代码示例,可能会有更准确的解决方案。

页面内容是否对你有帮助?
有帮助
没帮助

相关· 内容

旧项目TypeScript改造问题与解决方案记

'{}'. // 编辑器报错:[ts] 类型 “{}” 不存在 属性 “b”。...给`a`对象增加any 属性 (应急)。具体方式为:`let a: any = {};`。这个方法能够让TypeScript 类型 检查时忽略这个对象,从而编译通过不报错。...### Window对象 属性 赋值报错 与上一个情况类似,我们给一个对象中赋值一个 不存在 属性 ,会出现编辑器和编译报错: window.a = 1; // 终端编译报错: TS2339 : Property...'a' does not exist on type 'Window'. // 编辑器报错:[ts] 类型 “Window” 不存在 属性 “a”。...编辑器报错:[ts] 类型 “ObjectConstructor” 不存在 属性 “assign”。

5K 1 0
  • 使用Vite重构Vue3项目

    前言 截止发文时间,vite正式版已经发布快2年时间了,vue3也发布到3.2版本了,它的周边设施基本 已经齐活了。也是时候再次重构下我那个vue3.0的开源项目了。...在vite中是 不存在 的,那么我们就需要查看vite是怎么处理静态文件了。...setup中的变量警告未被使用 当我在setup中声明了一个函数或者导入了一个文件,在template中已经使用了,但是他却报错ESLint: 'xx' is assigned a value but never ...": true 使用vite提供的对象 当我想使用vite所提供的glob 属性 时,发现编辑器报错: TS2339 : Property 'glob' does not exist on type...此时我们可以将其按照功能 类型 进行拆分。

    1.9K 1 0

    深度讲解TS:这样学TS,迟早进大厂【11】: 类型 断言

    当我们引用一个在此 类型 不存在 属性 或方法时,就会报错: const foo: number = 1; foo.length = 1; // index.ts:2:5 - error TS2339 :...上面的例子中,数字 类型 的变量 foo 是没有 length 属性 的,故 TypeScript 给出了相应的错误提示。 这种错误提示显然是非常有用的。...上面的例子中,我们需要将 window 添加一个 属性 foo,但 TypeScript 编译时会报错,提示我们 window 不存在 foo 属性 。...此时我们可以使用 as any 临时将 window 断言为 any 类型 : (window as any).foo = 1; 在 any 类型 的变量 ,访问任何 属性 都是允许的。...,那么被断言为父类,获取父类的 属性 、调用父类的方法,就不会有任何问题,故「子类可以被断言为父类」 需要注意的是,这里我们使用了简化的父类子类的关系来表达 类型 的兼容性,而实际 TypeScript 在判断 类型 的兼容性时

    1.2K 2 0

    TypeScript学习笔记(二)—— TypeScript基础

    : number; let tom: Person = { name: 'Tom', age: 25 可选 属性 的含义是该 属性 可以 不存在 。...当我们引用一个在此 类型 不存在 属性 或方法时,就会报错: const foo: number = 1; foo.length = 1; // index.ts:2:5 - error TS2339 :...上面的例子中,数字 类型 的变量 foo 是没有 length 属性 的,故 TypeScript 给出了相应的错误提示。 这种错误提示显然是非常有用的。...上面的例子中,我们需要将 window 添加一个 属性 foo,但 TypeScript 编译时会报错,提示我们 window 不存在 foo 属性 。...此时我们可以使用 as any 临时将 window 断言为 any 类型 : (window as any).foo = 1; 在 any 类型 的变量 ,访问任何 属性 都是允许的。

    5.1K 2 0

    TypeScript

    function infiniteLoop(): never { while (true) {} } Object interface Person { name: string;...any 但有的时候,我们非常确定这段代码不会出错,比如下面这个例子: window.foo = 'foo'; // index.ts:1:8 - error TS2339 : Property 'foo...当我们向 window 添加一个 foo 时,会报错示我们 window 不存在 foo 属性 。...当然,现在的编译器足够聪明,调用的时候可以不传递 类型 ,编译器可以自己识别的 传递 类型 时,这个 类型 在函数中使用时的方法/ 属性 ,必须是存在的,或者继承自某个接口。...这里我有意使用不同的变量名,以表明 类型 值沿链向上传播,且与变量名无关。 #泛型约束 确保 属性 存在 当我们在函数中获取length 属性 ,在 类型 为number时,是没有length的,所以会报错。

    1.8K 1 0

    5 个 JavaScript “罕见”原生的 API

    闲言少叙,开冲~~ window.getComputedStyle() window.getComputedStyle()方法返回一个 CSSStyleDeclaration 对象,与 style 属性 类型 相同...pseudo-element]) // or window.getComputedStyle(element, [pseudo-element]) 它有两个参数,第一个是计算样式的元素,第二个是伪元素;若伪元素 不存在 ...// Haskell console.log(window.getComputedStyle(node, '::after').content) getBoundingClientRect ...() 该Element. getBoundingClientRect ()方法返回一个 DOMRect 对象,该对象提供元素大小及其相对于视口的位置信息; 用法如下: domRect = element. getBoundingClientRect ...const positionLeft = topElement.scrollLeft + rect.left; once: true once: true 可不是 API,它长得也不像 API,它是用来做 属性 配置的

    412 2 0

    读Zepto源码之 属性 操作

    左边表达式不用说,肯定是字符串 类型 ,右边的如果为字符串 类型 ,并且和左边的值相等,那表示 value 为数字字符串,可以用 +value 直接转换成数字。...propMap 是将一些特殊的 属性 做一次映射。 prop 取值和设置值的时候,都是直接操作元素对象 属性 ,不需要调用如 setAttribute 的方法。...这个我也不太明白,因为在获取值时,attr 方法对 不存在 属性 返回值为 undefined ,用 !== undefined 判断会不会更好点呢?...var parent = this.offsetParent || document.body 获取元素的 offsetParent 属性 ,如果 不存在 ,则默认赋值为 body 元素。...具体参见文档: Element. getBoundingClientRect () 因为 getBoundingClientRect 获取到的位置是相对视窗的,因此需要将视窗外偏移量加上,即加上 window.pageXOffset

    1.8K 0 0

    深度讲解TS:这样学TS,迟早进大厂【19】:泛型

    泛型约束§ 在函数内部使用泛型变量的时候,由于事先不知道它是哪种 类型 ,所以不能随意的操作它的 属性 或方法: function loggingIdentity(arg: T): T { console.log...(arg.length); return arg; // index.ts(2,19): error TS2339 : Property 'length' does not exist on...上例中,泛型 T 不一定包含 属性 length,所以编译的时候报错了。 这时,我们可以对泛型进行约束,只允许这个函数传入那些包含 length 属性 的变量。...,其中要求 T 继承 U,这样就保证了 U 不会出现 T 中 不存在 的字段。...[i] = value; return result; createArray(3, 'x'); // ['x', 'x', 'x'] 进一步,我们可以把泛型参数提前到接口名

    609 3 0

    一文彻底搞懂js中的位置计算

    换句话说Element.scrollHeight在元素 不存在 滚动条的情况下是恒等于clientHeight的。...简单来说一个元素如果 不存在 滚动条,那么他们的scroll和client都是相等的值。...HTMLElement.offsetParent 是一个只读 属性 ,返回一个指向最近的(指包含层级 的最近)包含该元素的定位元素或者最近的 table,td,th,body 元素。...-- MDN 讲讲人话,当前元素的祖先组件节点如果 不存在 任何 table,td,th 以及 position 属性 为 relative,absolute 等为定位元素时,offsetLeft/offsetTop...Element. getBoundingClientRect Element. getBoundingClientRect () 方法返回元素的大小及其相对于视口的位置。

    3.8K 1 0

    全网最全的,最详细的,最友好的 Typescript 新手教程

    any是一个“松散的”TypeScript 类型 。这意味着:这个变量可以是任何 类型 :字符串,布尔值,对象,真的,我不在乎。这实际 就像根本没有 类型 检查一样。...url" 属性 不存在 类型 字符串TypeScript。...除了字符串、数组和数字,TypeScript还有很多其他 类型 。 有布尔值,元组,"any", never ,枚举。假以时日,你会全都学会的。如果您好奇,请查看基本 类型 的文档。 现在让我们继续扩展接口。...这是因为接口上的一些 属性 是可选的,可能是未定义的,并且 类型 并不总是字符串(例如id是一个数字)。...那么在接口和 类型 之间应该使用什么呢?我更喜欢复杂对象的接口。TypeScript文档也建议了一种方法: 因为软件的理想 属性 是对扩展开放的,所以如果可能的话,应该始终在 类型 别名 使用接口。

    6K 4 0

    头条秋招面试题以及答案

    拓展: transform 属性 向元素应用 2D 或 3D 转换。该 属性 允许我们对元素进行旋转、缩放、移动或倾斜。 ?...var X= this. getBoundingClientRect ().left; var Y =this. getBoundingClientRect ().top; //再加上滚动距离,就可以得到绝对位置...var X= this. getBoundingClientRect ().left+document.documentElement.scrollLeft; var Y =this. getBoundingClientRect ...判断object是数组 类型 2.Array.isArray()方法。...去重 2.已知如下对象,请基于es6的proxy方法设计一个 属性 拦截读取操作的例子,要求实现去访问目标对象example中 不存在 属性 时,抛出错误:Property "$(property)"

    685 3 0

    【TypeScript】TS 类型 声明(四)

    any(任意 类型 )声明变量 类型 为any时编译时会绕过所有 类型 的检测,直接通过编译阶段的检查可以任意访问 属性 的方法和 属性 any 类型 可以赋值给任意 类型 如果变量初始没有定义 类型 ,默认为any;经过赋值后,TS... 类型 ,any 类型 可以赋值给任意 类型 unknown, never 都不允许执行变量的方法以及访问内部 属性 在unknown没有被断言或细化到一个确切 类型 之前,unknown不可以赋值给其它 类型 ,除了它自己和any...( 不存在 的值 类型 never 类型 表示永 不存在 的值的 类型 。...具有以下特点: never 类型 是所有 类型 的子 类型 ,即 never 类型 可以赋值给任何 类型 。其他任何 类型 均不是 never 类型 的子 类型 ,即其他 类型 均不可赋值给 never 类型 ,除了 never 本身。...即使any 类型 也不可以赋值给 never 类型 。返回 类型 never 的函数中,其终点必须是不可执行的,例如函数过程中抛出了错误或者存在死循环。

    208 1 0

    getBoundingClientRect 方法获取元素在页面中的相对位置

    获取元素位置可以用 offset 或 getBoundingClientRect ,使用 offset 因为兼容性不好,比较麻烦,offset获取位置会形成“回溯”。...而 getBoundingClientRect 方法则 兼容性较好,基本所有的浏览器都支持了,且使用起来更容易和简单。...1.使用语法: element. getBoundingClientRect (); 方法中没有任何参数,返回值为对象 类型 。...2.在IE8及以下的浏览器中,返回值对象包含的 属性 值有: top::元素上边缘距离文档顶部的距离; right: 元素右边缘距离文档左边的距离; bottom:元素下边缘距离文档顶部的距离; left:...元素左边缘距离文档左边的距离; 3.在IE9以上、谷歌、火狐等浏览器中,返回值对象包含的 属性 值有: top: 元素上边缘距离文档顶部的距离; right:元素右边缘距离文档左边的距离; bottom:元素下边缘距离文档顶部的距离

    3.8K 2 0