我在 React Native 中实现了文件上传,但控制台中存在一个问题:
const [file, setFile] = useState(null);
const pickDocument = async () => {
try {
const res = await DocumentPicker.pick({
type: [DocumentPicker.types.allFiles],
});
setFile(res);
} catch (err) {
if (DocumentPicker.isCancel(err)) {
console.log('User cancelled the picker');
} else {
console.log('DocumentPicker Error: ', err);
}
}
};
const uploadFile = async () => {
if (!file) return;
const formData = new FormData();
formData.append('files', {
uri: file.uri,
name: file.name,
type: file.type,
});
try {
const response = await axios.post(
'http://localhost:1337/api/upload',
formData,
{
headers: {
'Content-Type': 'multipart/form-data',
},
},
);
console.log(response.data);
} catch (error) {
console.error(error);
}
};
return (
<View style={styles.container}>
<Text>YOUR DOCS</Text>
<Button title="Pick a document" onPress={pickDocument} />
{file && <Text>{file.name}</Text>}
<Button title="Upload Document" onPress={uploadFile} />
</View>
);
};
代码似乎是正确的,也可以导入。我重新启动了一个应用程序。这没有帮助。 安装后我还链接了依赖项。如果您能帮助我,我会很高兴!
您的软件包似乎未正确安装,您是否尝试再次安装
yarn add react-native-document-picker
并遵循 React Native 文档选择器的文档 公共套餐