typescript 具有类似getter的访问函数的模块范围的全局变量

toiithl6  于 2023-03-04  发布在  TypeScript
关注(0)|答案(1)|浏览(80)

在类中,我可以有下面的_m定义,它允许我通过getter方法访问它,同时仍然使用obj.m表示法。我想知道是否存在关于全局成员的类似机制,其中我可以通过函数执行访问,但使用常规变量访问语法。

private _m: number;
public get m() { return this._m; }

// obj.m

关于我的问题的伪代码

// module 1
const gglob: number = 0xBAD;
export get function glob() { return gglob; }

// module 2
import { glob } from module

console.log(glob)
xbp102n0

xbp102n01#

这就是我最终的解决方案。我希望能够通过简单的语法轻松访问用户的 uid(而不是强制将其传递给所有使用它的函数),现在可以通过 g.uid 获得

// module 1
export class g {
  private static _uid: string;
  public static get uid() {
    return g._uid;
  }
  static set uid(uid: string) {
    g._uid = uid;
  }
}

// module 2
await db.collection(`users/${g.uid}/ ... `);

相关问题