使用React Native Web时如何选择文件?

时间:2019-12-27 03:42:59

标签: reactjs react-native react-native-web

我们正在构建一个使用react native的应用程序,但我们并未针对第一个版本发布本机版本。我们仍在使用网络(为此使用react-native-web)。

但是,我仍然坚持使用文件上载功能,因为要使用react native组件,我们需要获得native权限(但我们不是在本地部署它,因此浏览器中没有这种东西)。但是同时,我无法使用简单的<input type=“file” />,因为UI是基于对本机特定的标签(例如<View> / <Image>等)构建的。

对此有解决方案吗?

2 个答案:

答案 0 :(得分:0)

这里有一条建议对您有用!

请注意,如果您可以创建单独的上传文件组件,例如,可以在react-native-web中指定特定于平台的文件 'fileUploader.web.js' 您可以将其与此包结合使用 https://github.com/react-dropzone/react-dropzone

<Dropzone ref="_dp" onDrop={uploadPhotos}>
    <Text>TEXT HERE</Text> // you can remove this completely
</Dropzone>

您实际上可以将dropzone设置为完全不可见,并使用以下命令触发文件选择器:

this.refs._dp.open()

请记住,这仅适用于Web平台,您将需要为其他平台创建fileUploader

答案 1 :(得分:0)