typescript申明全局命名空间问题?

Bestime
  • 3.9k
重庆市

希望声明一个命名空间 test.d.ts,但依赖部分第三方库,这个写法不成功,希望可以全局调用test.xxx(),xxx为utils中的一个方法

import * as utils from 'xxxx'

declare namespace test {
    export = utils
}
回复
阅读 378
1 个回答
李十三
  • 13.3k
浙江
✓ 已被采纳
import * as utils from 'xxxx'

declare global {
  namespace test {
    export interface StringValidator {
      isAcceptable(s: string): boolean;
    }
  }
}

另外在命名空间里 export = xxx 这种语法不对

你想直接使用 util 并重命名为 test 的话

import * as utils from 'xxxx'

declare global {
  let test: typeof utils
}