Ionic v3中如何禁用文件上传的「拍摄视频」选项
解决Ionic v3 iOS端视频上传禁用「拍摄视频」选项的问题
我刚好在做Ionic v3项目时遇到过完全一样的需求——iOS端唤起文件选择器时,只想保留「照片图库」和「浏览」,去掉「拍摄视频」选项。其实只需要给你的input标签添加一个HTML标准属性就能搞定:
修改后的Input代码
<input type="file" (change)="videoUpload($event)" id="file-input" style="opacity: 0" accept="video/*" capture="existing" #videoInp>
原理说明
在iOS的WebKit内核(Ionic v3的iOS应用基于WKWebView)中,当input[type="file"]设置了accept="video/*"时,系统默认会提供拍摄新视频的选项。而添加capture="existing"属性后,相当于告诉系统:我们只需要选择已存在的媒体文件,不需要创建新的,这样系统就会自动隐藏「拍摄视频」的选项,只保留「照片图库」和「浏览」。
注意事项
- 这个属性是HTML Media Capture规范的一部分,iOS 10及以上版本的WKWebView都支持,完全适配Ionic v3的iOS运行环境。
- 不需要额外修改TypeScript代码,保持你原来的
videoUpload($event)逻辑和触发点击的代码不变即可。
内容的提问来源于stack exchange,提问作者Rodrigo Chaves
相关产品推荐
相关产品推荐

