当使用 Expo for React Native 时,有没有办法从文件中读取 mime 类型?

Gol*_*Jer 5 react-native expo

React Native - 文件类型很棒但需要链接,因此不适用于托管的 Expo 项目。

使用 Expo 管理的项目时如何读取文件 MIME 类型?

Jos*_*ano 2

您可以简单地使用mime Javascript 库从文件名中获取 mime 类型: https: //www.npmjs.com/package/mime

import * as mime from 'mime';

const mimeType = mime.getType('my-doc.pdf') // => 'application/pdf'
Run Code Online (Sandbox Code Playgroud)

如果使用DocumentPicker获取文件,可以直接从结果中获取文件名:

const result = await DocumentPicker.getDocumentAsync();
if (result.type === 'cancel') { 
  return;
}
const fileName = result.name;
const mimeType = mime.getType(fileName);
Run Code Online (Sandbox Code Playgroud)