2017-12-02 17 views
0

에 나는, 타이프 라이터를 사용하여 아우렐 리아의 CLI 응용 프로그램에서 Phaser를 사용 NPM 제대로 실행를 설치하려면, 나는 이미 aurelia.json 수정 한 ts 파일은 페이저가 정의되지 않았다고 말합니다. 그리고 사실, cli 깔창을 보면, 페이저를 추적하지 않는 것 같습니다. 종속성 이름을 "phaserjs"와 같이 변경하면 추적을 시작하지만 가져 오기에 다른 이름이 필요하기 때문에 사용할 수 없습니다.가져 오기 페이저는 아우렐 리아

import {autoinject} from 'aurelia-framework'; 
import * as phaser from "phaser"; 

@autoinject 
export class Login { 
    attached():void{ 
     console.log("this print undefined", Phaser); 
    } 
} 

내가 * "페이저"에서 "페이저", 수입 {게임} 아무것도에서 페이저로 작동하는 것 같다 가져 오기를 사용하여 시도했다. 그러나 vendor-bundle.js를 보면 phaser.js 행이 있습니다. 그래서 내가 왜 그것을 사용할 수 없는지 모르겠다.

도움이 될 것입니다.

답변

0

나중에 동일한 문제가있는 사람의 경우 : Phaser 2x는 모듈 식으로 설계되지 않았습니다. 이를 사용하려면 필요한 몇 가지 종속성을 내 보내야합니다. 먼저 phaser-ce (Community-edition)을 사용하십시오. webpack을 지원합니다. 두 번째로 종속성 내보내기 :

요구 사항을 사용하는 aurelia에서 aurelia.json 공급 업체 종속성을 수정합니다.

 { 
     "name": "pixi", 
     "path": "../node_modules/phaser-ce/build/custom", 
     "main": "pixi", 
     "exports": ["PIXI"] 
     }, 
     { 
     "name": "p2", 
     "path": "../node_modules/phaser-ce/build/custom", 
     "main": "p2", 
     "exports": ["p2"] 
     }, 
     { 
     "name": "phaser-ce", 
     "path": "../node_modules/phaser-ce/build/custom", 
     "main": "phaser-split", 
     "exports": ["Phaser"] 
     }, 

이제

import * as Phaser from "phaser-ce"; 

페이저-CE는 또한 모듈 폴더 "typings"

내부 타이프 친 정의를 포함 문제없이 페이저를 사용할 수 있습니다