2017-11-30 3 views
3

최근에 로컬로 작업중인 D3 프로젝트를 github로 이동하려고 시도했지만 문제가 발생했습니다. 요점은 온라인 여기로컬 D3 작동하지 않음 온라인

enter image description here

: https://gist.github.com/KingOfCramers/6057411e8c55d87a5894291aefbe0b6d

나는 자원을로드 할 약속 래퍼를 사용하고, 그리고 그것은 .ALL 기능을 사용하여 해결 한 후 때 다음 로컬 것 같습니다 무엇 내 시각화를 해고하라고. 코드의 관련 비트는 다음과 같습니다 : 나는 GitHub의에 시각화를 업로드

var promiseWrapper = (xhr, d) => new Promise(resolve => xhr(d, (p) => resolve(p)))  
Promise.all([promiseWrapper(d3.json,"yemen.json"),promiseWrapper(d3.csv,"droneData.csv")]).then(resolve =>{ 
    createMap(resolve[0],resolve[1]) 
}) 

function createMap(districts,drones){...visualization code... 

, 블록 페이지 내 JSON 데이터의 기능 배열을 액세스 할 수 없음을 알려줍니다. 로컬에서 작업 할 때이 오류가 발생하지 않습니다. 나는이 오류 메시지를 콘솔에 기록합니다 : "잡히지 않는 (약속 있음) TypeError : null의 'features'특성을 읽을 수 없습니다." 내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변

1

대체 방법을 제공 하겠지만 귀하의 질문에 대한 답변이 확실하지 않습니다.

d3은 pomiseWrapper로 수행중인 작업을 수행하는 자체 대기열 메커니즘을 제공합니다.

https://github.com/d3/d3-queue

d3.queue() 
    .defer(d3.json, "yemen.json") 
    .defer(d3.csv, "droneData.csv") 
    .await(createMap); 

function createMap(error, districts, drones) {.... 

당신이 작업 바이올린이 있나요보기?

관련 문제