如何通过JavaScript将参数从D3的.js文件传递给Arcgis Api的.js文件?

时间:2017-02-28 07:56:53

标签: d3.js arcgis-js-api

我使用D3和ArcGIS API 3.19开发交互式Web。在ArcGis API的.js文件中,我使用以下代码构建URL以获取.json

    var timeinterval =geo;
    var locationURL="https://paleobiodb.org/data1.2/colls/list.json?lngmin=-125&lngmax=-60&latmin=25&latmax=50&limit=all&show=time&level=3";
    locationURL += "&"+"interval="+timeinterval;

在D3的.js文件中,我双击以获取d.name

var g=svg.selectAll("g")
        .data(partition.nodes(root))
         .enter().append("svg:g")
        .on("click", clicked)
        .on("dblclick",TransInterval);

function TransInterval中,第一个console.log()可以获得输出。但第二个没有任何结果。

var geo;//the global variable
function TransInterval(d){
   var wa= d.name;
   geo=wa;
   console.log(geo);
   return geo;
    };
   console.log(geo);

那么,我想知道如何将d.name传递给全局变量,并且可以在ArcGis API的.js文件中使用?谢谢!

1 个答案:

答案 0 :(得分:0)

我没有看到你编写代码的方式有任何问题。调用函数d.name时,geo的值将分配给变量TransInterval

您需要了解的JavaScript是,变量是函数作用域。因此,在执行第二个console.log(geo)时,可能未调用函数TransInterval