npm i --save nativescript-filepickers
- 版本:1.0.3
- GitHub: https://github.com/rjarman/nativescript-filepicker
- NPM: https://npmjs.net.cn/package/nativescript-filepickers
- 下载
- 昨天:0
- 上周:0
- 上个月:0
nativescript-filepickers

功能
- 支持 作用域存储
- 可以 打开 来自外部和应用的内部存储的文件
- 可以从外部和应用的内部存储获取 路径
- 可以将文件 复制 到内部存储
- nativescript-filepickers 插件支持 单选 和 多选
- 支持 任何类型的扩展名
(新增) @1.0.3
- 在打开文件时使用
OpenFile(path)
只显示一次和总是选项的示例import { CopyTo, Create, Extensions, Modes, OpenFile } from "nativescript-filepickers";
const context = Create({
extensions: ['pdf', 'xls'],
mode: Modes.Single,
});
context
.Authorize()
.then(() => {
return context.Present();
})
.then((assets) => {
assets.forEach((asset) => {
const newPath = CopyTo(asset);
OpenFile(newPath);
this.selectedImages.push(newPath);
console.log("Real Path: " + asset);
console.log("Copied Path: " + newPath);
});
});
支持的平台
操作系统 | 版本 |
---|---|
Android 11 | API 30 |
Android 10(部分测试) | API 29(部分测试) |
Android 9(部分测试) | API 28(部分测试) |
即将支持 iOS | 即将支持 iOS |
npm i nativescript-filepickers
导入插件
TypeScript
import { CopyTo, Create, Extensions, Modes, OpenFile } from "nativescript-filepickers";
创建文件选择器
在 single
或 multiple
模式下创建文件选择器,以指定文件选择器是用于单选还是多选图片
TypeScript
const context = Create({
extensions: ['pdf', 'xls'],
mode: Modes.Single,
});
请求权限,显示图片列表并处理选择
context
.Authorize()
.then(() => {
return context.Present();
})
.then((assets) => {
assets.forEach((asset) => {
const newPath = CopyTo(asset);
this.selectedImages.push(newPath);
console.log("Real Path: " + asset);
console.log("Copied Path: " + newPath);
});
});
注意:为了请求 Android 6+(API 23+)的权限,我们使用 nativescript-permissions。
注意:为了确保有权限,请在 AndroidManifest.xml 中添加以下行
<manifest ... >
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
<application android:requestLegacyExternalStorage="true" ... >
...
</application>
</manifest>
API
方法
Create(options)
- 创建文件选择器实例。可能的选项有
选项 | 平台 | 默认值 | 描述 |
---|---|---|---|
mode | both | Modes.Single |
文件选择器的模式。可能的值是 Modes.Single 用于单选,Modes.Multiple 用于多选。 |
extensions | both | -- | 选择 Extensions.All 以接受所有类型的文件,或明确指定类型数组如 ['pdf', 'xls', 'png'] |
Authorize()
- 请求所需的权限。Present()
- 显示相册以使用户能够选择文件。返回设备上所选文件的实际路径数组。OpenFile(path: string, isAbsolute = false)
- 如果isAbsolute
标志为true
,则从应用的内部存储和外部存储打开文件。CopyTo(path: string)
- 从path
复制文件到应用的内部存储并返回目标路径。
许可证
Apache License 版本 2.0