TypeScript导入*而不创建别名

时间:2015-07-25 09:49:56

标签: import typescript

在TypeScript中,你如何"导入*"从文件中创建没有任何别名?

E.g。我有一个文件" utils"具有顶级导出功能,并希望导入所有这些功能而无需为每个功能重新创建别名。

这样的事情:

import * from "utils";

这可能吗?

3 个答案:

答案 0 :(得分:1)

您无法生成自动名称,您必须为其指定一个文件本地名称。这是设计为每个文件提供自己的命名上下文。

// import the default export (something exported with "export default")
import Stuff from "./Stuff";

// import specific things only; aliases in this style are optional
import { ItemA as AliasA, ItemB as AliasB } from "./Stuff";
import { ItemA, ItemB } from "./Stuff";

// import everything at once, grouped under a common name
import * as Stuff from "./Stuff";
  

我...想要导入所有这些而不重新创建每个函数的别名。

听起来你似乎想要上面的第三个选项。

  

但是使用此语法创建别名

我认为,如果您可以在定义名称的同时导入所有内容,那么您就会发生命名冲突。这样做的方式,你被迫为每个导入选择一个名称,将它留给你选择的名称以避免碰撞,而不是让导入互相破坏。

我认为你可以做类似的事情,但只能使用.d.ts个文件。 jquery.d.ts做到了,但我对它的运作方式并不是100%坚实。你可以简单地说:

// where the file is really Stuff.d.ts
import "./Stuff";

答案 1 :(得分:0)

我认为这个想法是创造一个" Utils"模块,将所有函数和/或类附加到它,将导出放在它们前面,然后导出它,例如

module Utils {
    export function add(first:number, second:number):number {
        return first+second
    }
}
export = Utils

虽然我还没有使用打字稿中的es6模块语法,但似乎你暗示要使用它。

答案 2 :(得分:-1)

你已经接近了:

#Initialization of data
df<-as.data.frame(matrix(sample(c(1:5),60,replace=T),nrow=12))
df$subject<-rep(1:3)
df$group<-rep(1:4, each=3)

没有花括号。