VSCode无法读取打字稿的相位器定义

时间:2018-08-29 21:23:31

标签: typescript visual-studio-code phaser-framework

我一直关注this tutorial的移相器,但是我无法运行第4项中的代码。我已经完全复制了它,没有进行任何修改(请参见下面的内容,如果您尚未看到的话)本教程),但我遇到了错误。

height行给了我错误“ [ts]预期0-1个参数,得到5”,同时我还被告知属性“ load”,“ add”和“ world”类型“游戏”不存在。

尝试进行编译时,会收到此响应。

new Phaser.Game(800, 600, Phaser.AUTO, 'content', { preload: this.preload, create: this.create });

我的app.ts现在:

    TSError: ⨯ Unable to compile TypeScript:
app.ts(4,25): error TS2304: Cannot find name 'Phaser'.
app.ts(4,47): error TS2304: Cannot find name 'Phaser'.
app.ts(7,11): error TS2503: Cannot find namespace 'Phaser'.

    at createTSError (C:\Users\Username\AppData\Roaming\npm\node_modules\ts-node\src\index.ts:261:12)
    at getOutput (C:\Users\Username\AppData\Roaming\npm\node_modules\ts-node\src\index.ts:367:40)
    at Object.compile (C:\Users\Username\AppData\Roaming\npm\node_modules\ts-node\src\index.ts:558:11)
    at Module.m._compile (C:\Users\Username\AppData\Roaming\npm\node_modules\ts-node\src\index.ts:439:43)
    at Module._extensions..js (module.js:663:10)
    at Object.require.extensions.(anonymous function) [as .ts] (C:\Users\Username\AppData\Roaming\npm\node_modules\ts-node\src\index.ts:442:12)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Function.Module.runMain (module.js:693:10)

任何帮助将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:0)

尝试添加对您的定义文件的引用。将其放在您的app.ts的开头

/// <reference path="path/to/your/deffile/phaser.d.ts" />

此外,不要忘记添加Pixi定义。

答案 1 :(得分:0)

TypeScript教程中的示例代码似乎对于Phaser 3已过时。请参见the current example JavaScript codeThe current TypeScript tutorial也已过时。考虑使用Phaser的支持渠道之一来报告问题。同时,您可以基于JavaScript示例创建TypeScript代码。