npm i --save nativescript-plugin-filepicker
- 版本: 1.0.0
- GitHub: https://github.com/prabudevarrajan/nativescript-plugin-filepicker
- NPM: https://npmjs.net.cn/package/nativescript-plugin-filepicker
- 下载次数
- 昨天: 0
- 上周: 0
- 上个月: 0
NativeScript-Filepicker
支持单选和复选的文件选择插件。对于 Android,它使用 Intent 打开默认的文件选择器。对于 Android 6 (API 23) 及以上版本,需要明确请求读取文件存储的权限。请参阅示例了解实现细节。
对于 iOS,它使用 UIDocumentPickerViewController 进行文件选择。
安装
tns plugin add nativescript-plugin-filepicker
使用
在 single
或 multiple
模式下创建 filepicker,以指定 filepicker 用于单选还是多选文件
TypeScript
let context = filepicker.create({
mode: "single", // use "multiple" for multiple selection
extensions: ["pdf", "jpg", "doc", "docx"]
});
Javascript
var context = filepicker.create({ mode: "single" }); // use "multiple" for multiple selection
请求权限,显示文件列表并处理选择
context
.authorize()
.then(function() {
return context.present();
})
.then(function(selection) {
selection.forEach(function(selected) {
// process the selected file
});
}).catch(function (e) {
// process error
});
注意:为了请求 Android 6+ (API 23+) 的权限,我们使用 nativescript-permissions。
API
方法
- create(options) - 创建 filepicker 的实例。可能选项有
选项 | 平台 | 默认值 | 描述 |
---|---|---|---|
mode | both | multiple | filepicker 的模式。可能的值为 single 表示单选,multiple 表示多选。 |
extensions | both | 对于 iOS,是 public.item 和 null (所有文件) 对于 Android | 选择是否在数组中指定文件扩展名。例如:["pdf", "doc"] |
showAdvanced | Android | false | 在 Android 上显示内部和可移除存储选项(警告:未官方支持)。 |
hostView 参数可以设置为托管文件选择器的视图。仅适用于 iOS,用于从模态页面打开选择器时。
- authorize() - 请求所需的权限。
- present() - 显示文件选择器,让用户选择文件。返回所选文件的数组。
示例
对于示例,请使用示例 demo-angular 项目。
$ cd demo-angular
$ tns debug android/ios
贡献
我们欢迎 PRs!查看 贡献指南。如果您想贡献,但不确定从哪里开始 - 查找标记为 help wanted
的 问题。
鸣谢
- 对于 iOS,灵感来自 nativescript-mediafilepicker
- 对于 Android,灵感来自 nativescript-imagepicker
许可
Apache 许可证版本 2.0,2004 年 1 月