2017-10-03 8 views
0

이 차트를 생성하는 배열에서 동적으로 dc 차트를 생성하려고합니다. 지금까지는 모든 것이 잘 작동하지만 valueAccessor에서 사용자 지정 계산을 출력하는 데 어려움을 겪고 있습니다. 나는이 모든 것을 다르게하기 위해 객체와 함수 (예 : + - /)를 분리하려고했습니다. 최신 jsfiddle http://jsfiddle.net/yccu/L7k3sunz/18/ 다음은 코드 조각이지만 잘못된 방향으로 확신합니다.json 목록에서 DC.JS 차트를 동적으로 생성하는 경우 valueAccessor로 문의하십시오.

.valueAccessor(function(p){ 
var x = {} 
var v = '' 
cl_val.algorithm.forEach(function(f,i) { 
if(cl_val.algorithm[i].dim){ 
    x = x && p.value[cl_val.algorithm[i].dim]; 
} 
    if(cl_val.algorithm[i].func){ 
    x = x && [cl_val.algorithm[i].func]; 
} 
    }); 

    console.log(x) 
    return x; 

}); 

답변

0

다음은 배열에서 이들을 푸시 한 다음 eval 함수와 조인을 사용하여 작동합니다.

. valueAccessor(function(p){ 
     var ret = []; 
     cl_val.algorithm.forEach(function(f,i) { 
    if(cl_val.algorithm[i].dim){ 
     ret.push(p.value[cl_val.algorithm[i].dim]); 
    } 
    if(cl_val.algorithm[i].func){ 
     ret.push(eval([cl_val.algorithm[i].func])); 
    }    
     }); 
    console.log (eval(ret.join(' '))) 
     return eval(ret.join(' ')); 

});