我有一个在项目中运行良好的TypeScript代码,但在我的全新项目中,它不再有效。
我正在使用namespaces
来构建我的应用:
app.ts:
namespace App {
export function render() {...}
export function onRouteNotFound() {...}
}
main.ts:
App.onRouteNotFound();
这是投掷:
main.ts(33,8): error TS2339: Property 'onRouteNotFound' does not exist on type 'typeof App'.
现在更复杂:
控制器/ category.ts:
namespace App.Controller.Category {
export function details() {
App.render(...);
}
}
仍在投掷:
controller/category.ts(5,7): error TS2339: Property 'render' does not exist on type 'typeof App'.
它在类和函数上运行良好,但我不想使用它。我更喜欢名称空间的“静态”。
我该怎么做才能做到这一点?
这是我的tsconfig.json
文件:
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"strict": true,
"esModuleInterop": false,
"noImplicitAny": true,
"moduleResolution": "node"
},
"include": [
"public/**/*.ts",
"app/**/*.ts"
]
}
感谢任何输入! (这段代码与其他应用程序几乎相同,但我没有使用相同的构建链,也许没有最新的打字稿版本,我不知道)
使用tsc v2.7.2