Reactjs 如何访问使用create react app创建的src文件夹中的json文件

Reactjs 如何访问使用create react app创建的src文件夹中的json文件,reactjs,redux,react-redux,axios,Reactjs,Redux,React Redux,Axios,我是个反应新手。我已经使用npx create react应用程序创建了react应用程序。在操作中,axios.get抛出localhost:3000未找到文件错误。下面是src/actions/index.js中的代码 export function lang(language) { let url = "./../resources/strings/strings_" + language + ".json"; return dispatch =>

我是个反应新手。我已经使用npx create react应用程序创建了react应用程序。在操作中,axios.get抛出localhost:3000未找到文件错误。下面是src/actions/index.js中的代码

       export function lang(language) {
      let url = "./../resources/strings/strings_" + language + ".json";
      return dispatch => {
        axios.get(url).then(response => {
          console.log(response.data)
        }).catch(response => {
          console.log(response);
        });
      }
    }
这是项目结构[1]:

我做错了什么?我找不到合适的解决办法。
提前谢谢。

我同意Easwar,你需要看看这个问题的答案

axios似乎只在/public文件夹中运行,因此您需要在public文件夹中使用json文件。如果需要,可以将它们放在公用文件夹的文件夹中

这是有意义的,因为webpack捆绑包位于公用文件夹中,一旦捆绑应用程序,只有公用文件夹中的文件才可供您的项目使用


由于axios在您使用时是一个xhr请求库,因此它可能看到的唯一文件结构是在公用文件夹中,因此最有可能是:index.html、manifest.json和您的webpack bundle.js,它将所有js代码捆绑到一个文件中。

我同意Easwar,您需要看看这个问题的答案

axios似乎只在/public文件夹中运行,因此您需要在public文件夹中使用json文件。如果需要,可以将它们放在公用文件夹的文件夹中

这是有意义的,因为webpack捆绑包位于公用文件夹中,一旦捆绑应用程序,只有公用文件夹中的文件才可供您的项目使用


由于axios在您使用时是一个xhr请求库,因此它可能看到的唯一文件结构是在公用文件夹中,因此最有可能是index.html、manifest.json、,还有你的webpack bundle.js,它将你所有的js代码捆绑到一个文件中。

有没有可能重复的方法可以通过将json文件保存在src文件夹中来实现?有没有可能重复的方法可以通过将json文件保存在src文件夹中来实现?有没有方法可以通过将json文件保存在src文件夹中来实现@EKR990011仅适用于使用导入或不需要axios的情况。由于您处于react中,如果您使用的是create react app,则很可能是es6,请导入“[此处的文件路径]”。Axios不能,因为它发生在您使用它的活动中。您想使用axios获取这些json文件有什么原因吗?这个问题的答案是关于导入json文件的:Axios实际上是用于从服务器获取数据的。如果您不希望最终用户在收到请求之前下载这些json文件,您确实需要一个独立于react前端的web服务器来存放这些json数据,那么您可以使用axios从服务器请求这些数据。我需要根据所选语言动态导入json文件。我怎么做?从“./../resources/strings/strings.+language+.json”导入LangagePath。这里的语言应该被localStorage值替换。例如,您的语言变量可以来自您的状态。我假设最终用户可以选择他们的语言,这意味着您很可能在某个地方将它作为一个道具传递给这个组件,该组件将提供json语言。有没有一种方法可以通过将json文件保存在src文件夹中来实现这一点@EKR990011仅适用于使用导入或不需要axios的情况。由于您处于react中,如果您使用的是create react app,则很可能是es6,请导入“[此处的文件路径]”。Axios不能,因为它发生在您使用它的活动中。您想使用axios获取这些json文件有什么原因吗?这个问题的答案是关于导入json文件的:Axios实际上是用于从服务器获取数据的。如果您不希望最终用户在收到请求之前下载这些json文件,您确实需要一个独立于react前端的web服务器来存放这些json数据,那么您可以使用axios从服务器请求这些数据。我需要根据所选语言动态导入json文件。我怎么做?从“./../resources/strings/strings.+language+.json”导入LangagePath。这里的语言应该被localStorage值替换。例如,您的语言变量可以来自您的状态。我假设最终用户可以选择他们的语言,这意味着您很可能在某个地方将它作为一个道具传递给这个将提供json语言的组件。