Typescript 如何使ts节点知道在'd.ts'文件中声明的命名空间?
我有一个Typescript 如何使ts节点知道在'd.ts'文件中声明的命名空间?,typescript,namespaces,ts-node,.d.ts,babel-node,Typescript,Namespaces,Ts Node,.d.ts,Babel Node,我有一个MY_FILE.ts这样的文件: const someFunction = (param: MY_NAMESPACE.PARAM) : boolean => { // DO SOMETHING }; 参数类型通过名为MY_namespace的名称空间访问,该名称空间是我在MY_namespace.d.ts文件上声明的。像这样: src/MY_NAMESPACE.d.ts declare namespace MY_NAMESPACE { type PARAM: SOME_TYP
MY_FILE.ts
这样的文件:
const someFunction = (param: MY_NAMESPACE.PARAM) : boolean => { // DO SOMETHING };
参数类型通过名为MY_namespace
的名称空间访问,该名称空间是我在MY_namespace.d.ts
文件上声明的。像这样:
src/MY_NAMESPACE.d.ts
declare namespace MY_NAMESPACE {
type PARAM: SOME_TYPE
}
我需要运行包含脚本的MY_FILE.ts
文件
这很好:
npx babel-node src/MY_FILE.ts --extensions ".ts"
这个不起作用(我希望它能正常工作):
我收到此错误:错误TS2503:找不到名称空间MY_名称空间
注意:在我的实际情况中,myu名称空间
称为TYPES
如何使其与ts节点一起工作?我遇到了类似的问题。问题是,ts节点
忽略了tsconfig.json
的include
-选项,并且仅在开始文件中的导入/引用之后(请参阅)
我通过使用tsconfig.json
中ts节点的files
选项解决了这个问题
{
"compilerOptions": {...},
"ts-node": {
"files": true
},
"include": [
"./src/**/*.ts",
"./libs/**/*.d.ts"
]
}
还有其他解决方案(三重斜杠指令、类型根)。请阅读上面的链接。谢谢。现在很好用。
{
"compilerOptions": {...},
"ts-node": {
"files": true
},
"include": [
"./src/**/*.ts",
"./libs/**/*.d.ts"
]
}