代码之家  ›  专栏  ›  技术社区  ›  brienna

导入函数中的“未定义”值,需要在React应用程序中使用该值

  •  0
  • brienna  · 技术社区  · 3 年前

    undefined 我的应用程序中的价值。

    在函数内部,我有一些控制台。显示已成功获得结果的日志。它只是没有被传递回脚本。它被忽略了。

    如何让结果显示在应用程序中。js?

    我在沙箱中复制了这个问题 here .

    控制台。日志语句:

    (addressParser) creating layer: addresses 
    (createLayers) addresses: undefined 
    (addressParser) done creating layer: addresses 
    (addressParser) addresses: [object Object] 
    

    应用程序。js:

    import "./styles.css";
    import layers from "./createLayers.js";
    
    export default function App() {
      return (
        <div className="App" layers={layers}>
          {Object.entries(layers).map(([name, layer]) => {
            return (
              <div>
                <span>Name: {name}</span>
                <br />
                <span>Data: {name.data ? "success": "failed"}</span>
              </div>
            );
          })}
        </div>
      );
    }
    

    创建图层。js:

    import Data from "./metadata.json";
    import load from "./addressParser.js";
    
    var layers = {};
    createLayers();
    
    function createLayers() {
      Object.keys(Data).forEach(function (name) {
        layers[name] = load(name, Data[name]);
        console.log("(createLayers) addresses: " + layers[name]);
      });
    }
    
    export default layers;
    

    地址分析器。js:

    import { readRemoteFile } from "react-papaparse";
    
    function load(name, metadata) {
      console.log("(addressParser) creating layer: " + name);
    
      readRemoteFile(metadata.url, {
        header: true,
        worker: true,
        complete: (results) => {
          /* header: true makes it into an array of objects */
          if (!results) {
            console.log("COULD NOT CREATE LAYER: " + name);
            return;
          }
    
          var layer = { ...metadata, data: results };
    
          console.log("(addressParser) done creating layer: " + name);
          console.log("(addressParser) addresses: " + results);
          return layer;
        }
      });
    }
    
    export default load;
    

    元数据。json:

    {
      "addresses": {
        "url": "https://raw.githubusercontent.com/FBosler/Medium-Data-Extraction/master/sales_team.csv"
      }
    }
    

    一个依赖项:解析。

    0 回复  |  直到 3 年前