React native 在React Native中保存数据

React native 在React Native中保存数据,react-native,React Native,因此,我目前正在学习React Native,并假设文件结构如图所示。我希望用户单击一个按钮,以便该按钮将一些文本保存到参考资料下的txt文件中。我该怎么做呢 我尝试过AsyncStorage、fn fetch blob、react本机文件系统,但都失败了(不确定这些库是否用于手机设备上的特定文件目录) 到目前为止,我有一个如下所示的代码,如果用户单击“创建文件”按钮,它会保存到一个名为“my file.txt”的文本文件中,该文件与当前的.js文件位于同一目录下,但无法正常工作 import

因此,我目前正在学习React Native,并假设文件结构如图所示。我希望用户单击一个按钮,以便该按钮将一些文本保存到参考资料下的txt文件中。我该怎么做呢

我尝试过AsyncStorage、fn fetch blob、react本机文件系统,但都失败了(不确定这些库是否用于手机设备上的特定文件目录)

到目前为止,我有一个如下所示的代码,如果用户单击“创建文件”按钮,它会保存到一个名为“my file.txt”的文本文件中,该文件与当前的.js文件位于同一目录下,但无法正常工作

import FileSystem from 'react-native-filesystem'

export default class SaveData extends React.Component {
    render() {
        return (
            <View style={styles.container}>
                <TouchableOpacity onPress={this.createFile}>
                    <Text>Save to file</Text>
                </TouchableOpacity>
            </View>
        );
    }

    createFile = async () => {
        const fileContents = 'This is some content.';
        await FileSystem.writeToFile('./my-file.txt', fileContents);
    }
}

从“反应本机文件系统”导入文件系统
导出默认类SaveData扩展React.Component{
render(){
返回(
保存到文件
);
}
createFile=async()=>{
const fileContents='这是一些内容';
等待FileSystem.writeToFile('./my file.txt',fileContents);
}
}

您在此处尝试执行的操作是不可能的。应用程序运行时,无法访问这些目录。这与在计算机上运行时不同(例如node.js应用程序)。在本机环境中运行时,此文件结构将不可用

异步存储
不用于保存文件。它用于保存值,因此对于您在此处尝试实现的目标,它永远不会起作用


最接近您尝试执行的操作是使用
react native fetch blob
并将文件存储在设备的文件系统中,这也是在移动设备上存储文件的正确方法。

使用异步存储时失败的原因是什么??试着用这个@mkEagles很抱歉措辞错误,没有失败,但没有完成我希望它做的事情,即在文本文件中存储值。使用异步存储,据我所知,它将一些密钥、值对保存到某个文件中。你知道我可以在我的项目目录中的何处引用此文件吗?如果你想存储到文件,请使用。如果你使用的是异步存储,则不能在项目中引用文件。好的,我不介意在设备的文件系统中存储文件。目前我正在开发一个iOS应用程序,我不太熟悉文件结构的工作原理。是否有一个你可以推荐的目录(我不介意将文本文件存储在哪里)我不确定文件结构,尤其是在iOS上。您可以在这里找到更多信息
https://github.com/joltup/rn-fetch-blob#user-内容文件系统
。此外,您可能应该使用此链接中的包,因为它已替换了
react native fetch blob