2016-09-28 7 views
3

Haxe 및 CreateJS (externs)를 사용하여 앱을 작성하려고합니다. 로드 매니페스트에 문제가 있습니다. mymanifest.json의외부 매니페스트 콘텐츠를로드하는 Haxe CreateJS가 실패합니다.

function loadAssets():void 
{ 
    var _manifest:String = "assets/manifests/mymanifest.json"; 
    _queue = new LoadQueue(true); 
    _queue.on("complete", onQueueComplete); 
    _queue.on("error", onQueueError); 
    _queue.loadManifest([_manifest]); 
} 

내용 :

{ 
    "path" : "assets/images/main_menu/", 
    "manifest" : 
    [ 
    {"id" : "mm_background", "src" : "background.jpg", "type":"Image"}, 
    {"id" : "mm_adv_off", "src" : "advanSelectOff.jpg", "type":"Image"}, 
    {"id" : "mm_adv_on", "src" : "advanSelectOver.jpg", "type":"Image"}, 
    {"id" : "mm_tech_off", "src" : "techSelectOff.jpg", "type":"Image"}, 
    {"id" : "mm_tech_on", "src" : "techSelectOver.jpg", "type":"Image"}, 
    {"id" : "mm_app_off", "src" : "appSelectOff.jpg", "type":"Image"}, 
    {"id" : "mm_app_on", "src" : "appSelectOver.jpg", "type":"Image"} 
    ] 
} 

내가 알 그 mymanifest.json가로드되는, 이미지의 그러나 아무도는로드되지 얻을 여기

는 코드입니다.
내가 브라우저에서 콘솔을보고하고, 네트워크 부하를 볼 :

내가 확인하는 방법 ...

onQueueError

는 트리거되지 않습니다, 그래서 오타 나 잘못된 오류가 있다고 생각하지 않습니다. .. 콘솔에 오류 추적 또는 정렬이 표시되지 않습니다. 네트워크에 이미지로드가 표시되지 않습니다.

답변

1

매니페스트가 JSON으로로드되는 중이고 매니페스트로 식별 할 수있는 것이 없다는 것이 확실합니다.

포스 하나 개 항목을 배열로 매니페스트를 추가하기 때문에 매니페스트 타입

, 그냥 (때문에 연장) 일반 JSON 파일로 해석합니다. 이를 매니페스트로 표시하려면 PreloadJS에 JSON 파일이 매니페스트임을 나타 내기위한 유형을 포함 할 수 있습니다.

예 :

_queue.loadManifest([ 
    {src: _manifest, type: "manifest"} 
]); 

OR : 대신 매니페스트를 포함하는 배열의 유일한 인수로 매니페스트를 통과 매니페스트 파일을 직접

을 전달합니다.

  1. (데모가하고있는 것입니다) 부하 항목의 배열
  2. 매니페스트 객체 (당신의 JSON의 기본적 내용,하지만 같은 다음 loadManifest 방법은 하나 개의 인수를 수신하면, 어느 그것이 가정 JavaScript)
  3. 인 단일 파일 경로입니다.

예 : 결과의 manifest 속성에 대한 확인을 구문 분석하고 JSON을로드 할 수 PreloadJS에게, 그것을로드해야

_queue.loadManifest(_manifest); // No square brackets 

.

+0

도움을 주신 Lanny에게 감사드립니다. – MikeH

+0

파일이 JSON으로만로드되는 것 같아서 동의합니다 ... 첫 번째 옵션 (_queue. [oadManifest ([src : _manifest, type : "manifest"}], true)을 시도했지만 은 여전히 ​​JSON으로로드됩니다. 두 번째 옵션이 실행되지 않는 것 같아요. loadManifest가 Array 형식의 매개 변수를 찾고 있다는 오류가 발생합니다. MikeH

+0

TypeScript 또는 다른 것을 사용하고 있습니까? loadManifest는 항상 배열 이상을 수용하여 정의가 잘못 될 수 있습니다. "manifest"유형으로로드하면 여전히 파일이 JSON으로로드되지만 파일이로드되면 매니페스트 속성을 찾습니다. JSON으로만로드하는 방법은 무엇입니까? – Lanny