可以从一个typescript模块导出一个简单的函数吗?
这不是为我编译的。
module SayHi {
export function() {
console.log("Hi");
}
}
new SayHi();
This workitem似乎在暗示你不能,但你没有直截了当地说出来。这不可能吗?
可以从一个typescript模块导出一个简单的函数吗?
这不是为我编译的。
module SayHi {
export function() {
console.log("Hi");
}
}
new SayHi();
This workitem似乎在暗示你不能,但你没有直截了当地说出来。这不可能吗?
5条答案
按热度按时间ldfqzlk81#
很难说在这个例子中你要做什么。
exports =
是关于从 * external * 模块导出的,但是你链接的代码样本是一个 * internal * 模块。经验法则:如果你写
module foo { ... }
,你写的是一个内部模块;如果你在一个文件的顶层写export something something
,你就写了一个外部模块,你很少会在顶层写export module foo
(因为那样你就会双重嵌套这个名字),更少会在一个有顶层导出的文件中写module foo
(因为foo
在外部是不可见的)。下面的事情是有意义的(每个场景由一条水平线描述):
mwg9r5ms2#
直接回答你的问题的标题,因为这首先出现在谷歌:
是,TypeScript可以导出函数!
下面是直接引自TS文档的一段话:
通过添加export关键字,可以导出任何声明(如变量、函数、类、类型别名或接口)。
Reference Link
qqrboqgw3#
如果你在Angular 上使用这个,那么通过一个命名的导出来导出一个函数。
否则,Angular将抱怨对象不是函数。
编辑:我现在用的是Angular 11,不再需要了,所以
export function someFunc(){ ...}
就足够了3xiyfsfu4#
在我的例子中,我是这样做的:
yquaqz185#
您还可以将
from
关键字与import
一起使用,并直接析构导出的对象。file1.ts
file2.ts