我一直在同时学习 Phaser 和 TypeScript,事情或多或少进展顺利。
我一开始只是通过脚本标签让我的index.html 调用phaser.js 和我的app.js,效果很好。我用了/// <reference path="./node_modules/phaser/typescript/phaser.d.ts" />
格式,以便我的 IDE(PhpStorm;基本上是 WebStorm)可以自动完成。这也很有效。
不幸的是,我的项目一直在增长,所以我想将所有类分成单独的文件。这显然说起来容易做起来难,但在 2016 年,最好的方法似乎是将我的所有文件设为“外部”,并使用 import {MyModule} from "./src/MyModule";
引用它们。语法。
让它停止抛出[大量]错误的最简单方法是创建一个如下所示的 tsconfig.json 文件:
{
"module": "commonjs",
"target": "ES6",
"files": [
"app.ts"
]
}
所以,现在我包含了许多仅包含 export class XYZ { ... }
的本地项目文件。在其中,它们工作得很好...而且我可以自动完成 Phaser 对象,因为我包含了 Phaser.d.ts...
...但是当我编译时,我收到大量如下错误:
Error:(40, 10) TS2503: Cannot find namespace 'Phaser'.
我改变了很多,我不知道最好的前进方式是什么。
最佳答案
get tons of errors like this: Error:(40, 10) TS2503: Cannot find namespace 'Phaser'.
您的 tsconfig 文件
应包含 phaser.d.ts
。
或者,您可以完全删除文件
,以使 TypeScript 包含包含 tsconfig.json 的目录下的所有文件。
关于javascript - 如何编译我的 TypeScript Phaser 项目,使其仅使用 Phaser.d.ts 引用路径找到 "Phaser"命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34582791/