[英]How can I compile my TypeScript Phaser project such that it will find the “Phaser” namespace using only a phaser.d.ts reference path?
我已经同时学习了Phaser和TypeScript,并且一切都进展顺利。
我刚开始通过脚本标签让index.html调用phaser.js和app.js,效果很好。 我使用/// <reference path="./node_modules/phaser/typescript/phaser.d.ts" />
格式,以便我的IDE(PhpStorm;基本上是WebStorm)可以自动完成。 这也很好。
不幸的是,我的项目一直在增长,所以我想将我所有的类都分离到单独的文件中。 这显然说起来容易做起来import {MyModule} from "./src/MyModule";
,但是似乎在2016年,做到这一点的最佳方法是将我的所有文件都设为“外部”,并使用import {MyModule} from "./src/MyModule";
的import {MyModule} from "./src/MyModule";
句法。
使它停止引发大量错误的最简单方法是创建一个如下所示的tsconfig.json文件:
{
"module": "commonjs",
"target": "ES6",
"files": [
"app.ts"
]
}
因此,现在我包含了许多仅包含本地项目的文件,其中仅包含export class XYZ { ... }
,并且它们可以正常工作...而且由于包含了phaser.d.ts,我可以自动完成Phaser对象的操作...
...但是,当我编译时,出现了很多这样的错误: Error:(40, 10) TS2503: Cannot find namespace 'Phaser'.
我已经做了很多改变,我不确定最好的方法是什么。
出现如下大量错误:错误:(40,10)TS2503:找不到名称空间“ Phaser”。
您的tsconfig files
应包含phaser.d.ts
。
或者,您可以完全删除files
以使TypeScript 包含tsconfig.json目录下的所有文件 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.