javascript - 如何编译我的 TypeScript Phaser 项目,使其仅使用 Phaser.d.ts 引用路径找到 "Phaser"命名空间?

标签 javascript typescript phpstorm webstorm phaser-framework

我一直在同时学习 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/

相关文章:

reactjs - react typescript .tsx 文件扩展名

vagrant - PhpStorm + Xdebug : Connection established, PhpStorm 中没有弹出调试窗口

PhpStorm localhost 给出 502 错误网关,但已设置解释器

javascript - 为什么打包的 Electron 应用程序会由于 Menu.getApplicationMenu() 在使用 electro 运行时返回 null 而失败。还好吗?

javascript - 使用其 url 生成 youtube 视频的嵌入代码

javascript - 尝试在 Angular 5 中使用外部 Javascript 库

javascript - 强制 typescript 不删除未使用的引用

intellij-idea - 如何在JetBrains中使用主题

javascript - 将绳子分成相等的两半

javascript - 如何在点击时更改按钮的文本?