uni-file-picker 使用报错
时间: 2025-05-19 10:19:52 浏览: 13
### 已知问题分析
`uni-file-picker` 是 `uni-app` 中用于文件选择和上传的一个重要组件。然而,在实际开发过程中可能会遇到多种错误情况,例如:
1. **FormData未定义**:当尝试使用原生 JavaScript 的 `FormData` 对象时可能出现此错误[^1]。
2. **跨域CORS问题**:如果服务器端未正确配置跨域策略,则可能导致前端无法正常访问资源[^2]。
3. **数据格式不匹配**:某些情况下,`uni.request` 不支持直接传递 `formData` 格式的参数[^3]。
4. **图片回显失败**:由于缺少必要的字段或属性设置不当,可能会影响组件的功能表现[^4]。
以下是针对上述常见问题的具体解决方案。
---
### 解决方案
#### 一、解决 `FormData is not defined` 错误
该问题是由于部分环境(如 H5 或小程序)中并未默认引入浏览器中的全局变量 `FormData` 所致。可以改用 `uni.uploadFile` 方法来完成文件上传操作,具体代码如下所示:
```javascript
<view class="example-body">
<uni-file-picker @select="selectVal" limit="5" file-mediatype="all" title="最多选择5个文件"></uni-file-picker>
</view>
<script>
export default {
methods: {
selectVal(file) {
const tempFilePaths = file.tempFilePaths;
if (tempFilePaths.length === 0) return;
uni.uploadFile({
url: `${BASE_URL}/api/uploadFile`, // 后台接收文件的接口地址
filePath: tempFilePaths[0], // 文件路径
name: 'file', // 参数名,需与后端保持一致
header: {
Authorization: "Bearer " + 'your_token_here' // 如果需要
阅读全文
相关推荐

















