最近在学习TS,手上项目有几个频繁使用的函数,想声明成全局的,如果像js一样直接往windows下添加会报错,该怎么解决?
1、 使用interface Window {}
// 新建一个global.d.ts文件,建议不要放在assets目录下,因为它仅为TS提供代码提示
// 然后把你的函数或变量声明到Window下
declare interface Window {
method1: Function;
property1: string;
}
2、 直接
// 赋值
window["method1"] = ()=>{};
window["property1"] = "";
// 使用
window["method1"]();
var str = window["property1"];
不过这样没有代码提示。
6赞
我是这样写的,声明一个module,然后里面声明变量,就是全局变量了:
export module ThePublicModule {
export let publicInfo: string;
}
用的时候只需要导入这个module,当然,你需要在某个入口里面初始化他们。
全局函数更好办,TS有static 方法,是类的方法,可以直接 TheClass.staticFunction() 来调用;
2赞
直接用 ts的 静态变量和方法就可以了
Mark
Mark~~
mark~
export class Global {
public static readonly instance = new Global();
public constructor() {}
// 这里开始添加你的方法
}
我都是这么干的
1赞