Javascript Springy Cytoscape.js未捕获类型错误:无法读取属性';质量';未定义的

Javascript Springy Cytoscape.js未捕获类型错误:无法读取属性';质量';未定义的,javascript,jquery,ajax,json,Javascript,Jquery,Ajax,Json,我试图使用cytoscape.js中的Springy布局从一个json文件构建一个新的图形,我从Springy.js 343中得到错误Uncaught TypeError:Cannot read undefined的属性“mass” 我在json文件中定义了“mass”和一个“mass”值,我已验证该文件是否通过console.log正确访问,以及 我已经看过源代码,根据初学者对javascript的理解,如果未定义,应该设置默认值 springy.js第343行 Layout.ForceDir

我试图使用
cytoscape.js
中的Springy布局从一个json文件构建一个新的图形,我从Springy.js 343中得到错误
Uncaught TypeError:Cannot read undefined
的属性“mass”

  • 我在json文件中定义了“mass”和一个“mass”值,我已验证该文件是否通过
    console.log
    正确访问,以及
  • 我已经看过源代码,根据初学者对javascript的理解,如果未定义,应该设置默认值
  • springy.js第343行

    Layout.ForceDirected.prototype.eachNode = function(callback) {
        var t = this;
        this.graph.nodes.forEach(function(n){
            callback.call(t, n, t.point(n));
        });
    };
    
    这是我的密码

    <html>
    <head>
      <title>Springy.js image node demo</title>
    </head>
    <body>
    <script src="jquery-1.11.3.js"></script>
    <script src="springy.js"></script>
    <script src="springyui.js"></script>
    <script src="bluebird.min.js"></script>
    <!--<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>-->
    
    <script/>  
    
      $.ajax({
        url: 'https://rawgit.com/theresajbecker/CompBio/master/SuperSmallNodes.json',
        type: 'GET',
        dataType: 'json'
      }).done(function(graphP) {  
    
        for (var i = 0; i < graphP.elements.nodes.length; i++) {  
            var node = graphP.elements.nodes[i].data.id;
            var Nmass = graphP.elements.nodes[i].data.mass;
            console.log('mass');
            console.log(graphP.elements.nodes[i].data.mass);
    
    
            console.log('node id');
            console.log(graphP.elements.nodes[i].data.id);
            console.log('station_name');
            console.log(graphP.elements.nodes[i].data.station_name);
        }
    
        for (i = 0; i < graphP.elements.edges.length; i++) {
            var Nnode = graphP.elements.edges[i].data.source;
            console.log('edges source');
            console.log(graphP.elements.edges[i].data.source);
            console.log('edges target');
            console.log(graphP.elements.edges[i].data.target);
            //console.log(node)
            }
    
        var graph = new Springy.Graph();
    
    
    
    
        for ( i = 0; i < graphP.elements.nodes.length; i++) 
                                                         {  
            var NGnode = graph.newNode({ label: 'graphP.elements.nodes[i].data.id'});
                                                         }
    
    
    
    
        for ( i = 0; i < graphP.elements.edges.length; i++) {  
            var edge = graph.newEdge({source: graphP.elements.edges[i].data.target},
                                     {target: graphP.elements.edges[i].data.target});
        }
    
    
    
    $(document).ready(function(){
      var springy = window.springy = jQuery('#springydemo').springy({
        graph: graph,
        nodeSelected: function(node){
          console.log('Node selected: ' + JSON.stringify(node.data));
        },
        repulsion: 500
        }); 
    
    });  
    
    
    });
    </script>
        <div>
    <canvas id="springydemo" width="800" height="400" style="border: 1px solid black;"></canvas>
    </div>
    
    
    </body>
    </html>
    
    
    Springy.js图像节点演示
    $.ajax({
    网址:'https://rawgit.com/theresajbecker/CompBio/master/SuperSmallNodes.json',
    键入:“GET”,
    数据类型:“json”
    }).done(函数(图形){
    对于(var i=0;i

    那么我误解了哪一部分呢

    var springy=window.springy=jQuery(“#springydemo”).springy({
    我认为这样的赋值是不正确的。如果我错了,请告诉我。@Mustaghees,我已经能够在其他示例代码中使用它,所以我认为它是正确的。