读本地文件反应原生

时间:2017-08-05 07:51:32

标签: javascript java reactjs react-native

我尝试使用我的本地文件系统读取文本文件 react-native-fs

然而,它一直告诉我文件不存在(确实如此,我仔细检查了它并尝试将其复制到运行窗口中)。

'use strict';

import React, { Component } from 'react';
//import FileSystem from 'react-native-filesystem';

import RNFS from 'react-native-fs';

import {
  AppRegistry,
  StyleSheet,
  Text,
  View,
  NetInfo
} from 'react-native';


export default class FactsApiFetcher extends Component
{ 
  constructor(props)
  {    
    super(props);   
    this.state =
    {
      fact: 'Loading...'
    } 
  }   

  componentWillMount()
  {
    this._getRandomFact();
  }

  _getRandomFact()
  {
    const fileContents = RNFS.read("D:\\AllRand\\facts-api-handler\\test.txt") //FileSystem.readFile("D:\\AllRand\\allfacts\\test.txt");    

   this.setState({
      fact: fileContents
    }) 
  }

  render()
  {    
    return <Text> { this.state.fact } </Text>;
  }  
}


AppRegistry.registerComponent('FactsApiFetcher', () => FactsApiFetcher);

1 个答案:

答案 0 :(得分:4)

您应该将文件捆绑到应用程序中或手动将它们放入模拟器或设备中。当你运行应用程序时,它只能探索它自己的文件系统,它无法探索你的Windows FS。使用此常量https://github.com/itinance/react-native-fs#constants可以访问文件。