类型“Window & typeof globalThis”上不存在属性“$loading”错误问题解决方法需要声明一下window目录文件代码演示declare interface Window { $loading: any}接口声明(interface I { x: number[]; })
TypeScript
使用
window
身上的方法
TypeScript
中引入
window
身上的方法报错:
类型
“
Window
&
typeof
global
This”上
不存在
属性
“xxxx”。
给
window
定义any
类型
:(不推荐)
这样就可以正常使用并且不报错啦!
在项目中找到*.d.
ts
后缀的文件 加上以下代码即可:
//.d.
ts
文件下
interface
Window
{
gdp: any; //注意这里如果不写any那么用
window
.gdp是可以的,但是用
window
.gdp
在javascript中,
typeof
和 instanceof 是用来判断数据
类型
比较通用的两个方法,这篇文章的目的是通过对这两个方法介绍来分析其存在的不足并提出优化方案。
typeof
——————————————————————————–
typeof
返回一个表达式的数据
类型
的字符串,返回结果为javascript中的基本数据
类型
,包括:number、boolean、string、object、undefined、function等6种数据
类型
。
typeof
100; //number
typeof
(1==1); //boolean
typeof
'onepixel'; /
在做vue+
typescript
开发过程,给
window
对象添加
属性
并赋值,却发现报错,如
类型
“
Window
&
typeof
global
This”上
不存在
属性
“gspZc”。
原则上,
TypeScript
需要开发者做到先声明后使用。这就导致开发者在调用很多原生接口(浏览器、Node.
js
)或者第三方模块的时候,因为某些全局变量或者对象的方法并没有声明过,导致编译器的
类型
检查失败。
通常情况下,我们给
window
对象赋值,只需求
window
.propoerty = 'xxx',但是在此处编译
这行代码是 JavaScript 中的解构赋值语法,它的含义是:
从 `
global
This` 对象中获取一个名为 `HTMLElement` 的
属性
,并将其赋值给变量 `HTMLElement`。如果 `
global
This` 对象中
不存在
名为 `HTMLElement` 的
属性
,则创建一个名为 `HTMLElement` 的空类,并将其赋值给变量 `HTMLElement`。
换句话说,这行代码的作用是在当前作用域中定义一个 `HTMLElement` 变量,其值要么是 `
global
This` 对象中的 `HTMLElement`
属性
的值,要么是一个空类。在后续代码中,可以使用 `HTMLElement` 变量来引用 `HTMLElement` 类。