0

log.ts 有以下代码

import {LOG} from './log'

LOG.e("tag","error");
LOG.f("tag","error");
LOG.d("tag","error");

我想要对 TS 文件的 IntelliSense 支持,但不希望导入生成的 javascript 的后果。

我只想在我的 Javascript 文件(log.js)中包含以下内容

    LOG.e("tag","error");
    LOG.f("tag","error");
    LOG.d("tag","error");
4

1 回答 1

0

log.ts文件必须只包含声明。

declare class LOG {
  public static e(a: string, b: string): void;
  public static f(a: string, b: string): void;
  public static d(a: string, b: string): void;
}

如果你想使用一个导入的类,并且它不应该包含在生成的 javascript 中,那么你需要使用declare.

这个类不是函数式的javascript代码,只是声明了类的类型和它的方法。生成 javascript 时,该类不会包含在构建中。

但是要执行这样的javascript,LOG必须已经在全局环境中声明。

操场...

于 2020-04-01T15:22:15.057 回答