Skip to content

global.d.ts

js
// 1、定义全局变量
declare var $: (param: string) => any // $为一个函数,参数param为string类型,返回值为any

// 2、定义全局函数
declare function $(param: () => string): void // 函数$,接收一个返回string类型的函数,并且$的返回值是void

// 3、使用interface函数重载
interface jQuery {
    (fn: () => void): void // 函数,参数还是一个函数
    (select: string): jQuery // 函数,参数是string
    text: (param: string) => jQuery // text方法,是一个函数,只有一个为string的param参数,返回值还是jQuery,可以递归调用
}
declare var $: jQuery // 定义全局变量


// 4、自定义jQuery的声明文件
// ES6模块化
declare module 'jquery' // 4.1直接这样定义jquery, 解决报错:【无法找到模块“jquery”的声明文件】
// 注意:vue+typescript项目在src/types项目下新建global.d.ts文件,再写入模块声明

// 4.2 或者一个个定义$所用的方法(感觉不可取,太复杂)
declare module 'jquery' {
    var $: any
    export = $ // 定义全局变量
}