无法使用console.log打印完整的JSON

时间:2017-02-11 09:13:11

标签: json react-native

  • 我正在尝试将JSON文件导入Sample变量,但只有前几个字符显示在Sample变量中。
  • sample.json是20,00,000个字符,当我在Console上打印Sample变量时,只打印了3,756个字符。对于可以通过console.log打印的字符有任何限制吗?
  • Sample variable中的完整数据仍然存在,我通过搜索sample.json文件末尾出现的字符串进行了验证

    var Sample = require('./sample.json');
    export default class proj extends Component {
      constructor(props) {
        super(props);
        this.state = {
          locations: [],
        };
      }
    
      loadOnEvent() {   
          console.log(Sample);
         //this.state={ locations : Sample };
      }
    }
    

是否有其他方法可以在Sample变量中打印数据。

2 个答案:

答案 0 :(得分:1)

在登录之前,您必须使用JSON.stringify将json转换为字符串。

/* ... */
  loadOnEvent() {   
      console.log(JSON.stringify(Sample));
     //this.state={ locations : Sample };
  }
/* ... */

答案 1 :(得分:0)

尝试使用其他方式加载。如果文件是远程的,请使用fetch;如果文件是本地的,请使用fs

如果是@Shota认为是内存问题,请考虑使用服务器端处理请求到json文件。设置微服务是一个很好的解决方案,它在启动时加载json文件并处理对从json文件解析的数据结构的请求。

回答webpack用例:

将webpack配置为使用file-loadercopy-webpack-plugin专门用于此文件,因为它足够大。考虑与webpack bundle并行加载它。如果您的应用程序包含大部件,而不是每种情况都需要将它们移动到separated bundles