Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 为什么我不能在React中从D3js加载外部数据?_Reactjs_D3.js_Fetch_External - Fatal编程技术网

Reactjs 为什么我不能在React中从D3js加载外部数据?

Reactjs 为什么我不能在React中从D3js加载外部数据?,reactjs,d3.js,fetch,external,Reactjs,D3.js,Fetch,External,我试图将D3和react一起使用,但当我从文件夹加载外部csv或json文件时,它将不起作用,而是返回一个html文件数组 import React from 'react'; import * as d3 from "d3"; class D3 extends React.Component{ constructor(props){ super(props); } componentDidMount = () => { this.startD3(); } start

我试图将D3和react一起使用,但当我从文件夹加载外部csv或json文件时,它将不起作用,而是返回一个html文件数组

import React from 'react';
import * as d3 from "d3";

class D3 extends React.Component{
constructor(props){
    super(props);
}

componentDidMount = () => {
    this.startD3();
}

startD3 = () => {
    d3.csv("/data/Book1.csv").then((data) => {
        console.log(data)
    })

d3.csv
将向给定的路径发送请求,因此您必须确保该文件由您的服务器提供,并且它不是文件系统路径

您可以将文件放在
public
文件夹中,只需使用
/Book1.csv
路径即可

d3.csv("/Book1.csv").then((data) => {
  console.log(data);
})

如何从服务器提供
/data/Book1.csv
?数据文件夹与包含D3文件的D3文件夹位于同一文件夹中。我尝试了不同的路径,但都不起作用。您确定正在为文件提供服务,并且没有尝试使用文件系统路径吗?您正在使用create react应用程序吗?是的,我正在使用create react应用程序您可以将
Book1.csv
文件放在
public
文件夹中,然后写入
d3.csv(“/Book1.csv”)