【发布时间】:2015-12-23 09:15:39
【问题描述】:
我有两个文件 myFunction.ts 和 index.ts。
-
myFunction.ts导出这样的函数:
export default (param1: string) => { return true }
-
index.ts像这样导入该函数:
import myFunction from './myFunction'
然后我想像这样使用来自myFunction 的类型:
function bla(aFn: myFunction) {
aFn('hello')
}
但是,编译器给了我一个cannot find name myFunction。
如何获取导出函数的类型?
作为一种解决方法,您可以像这样为函数创建和导出类型:
export type MyFunctionType = (param1: string) => boolean
export default (param1: string) => { return true; }
然后像这样导入:
import myFunction, { MyFunctionType } from './myFunction';
function bla(myFunction: MyFunctionType) {
myFunction('hello')
}
但是你会指定类型信息两次,这是我想避免的......
【问题讨论】:
-
这行得通吗? (在 a.ts 中)
const a = (param1: string) => { return true; }; export default a; -
我试过的是
function a(param1: string) { return true; }; export default a;,但也没有用... -
哦,我知道问题出在哪里。我会尽快添加答案。
标签: typescript