问题描述:打包成app后使用input上传图片只能做到在文件夹中选取,不能实现拍照上传图片

解决方案:

1.利用HTML5 Plus的Camera调用相机

2.利用HTML5 Plus的IO来实现读取拍照所得的图片文件

3.使用base64上传图片

clickInputLoader() {

let _this = this

if (~navigator.userAgent.indexOf("Html5Plus")) {

let plusReady = function(callback) {

if (window.plus) {

callback();

} else {

document.addEventListener("plusready", callback);

}

};

plusReady(function() {

let camera = plus.camera.getCamera(); // 调用相机

camera.captureImage(

function(filePath) {

plus.io.resolveLocalFileSystemURL( // 通过URL参数获取目录对象或文件对象

filePath,

function(entry) {

_this.lodingShow = true;

let reader = null

entry.file(function(file) {

let sizeJudge = false;

sizeJudge = _this.checkSize(file.size);

if (sizeJudge === false) {

return;

}

reader = new plus.io.FileReader(); // 文件系统中的读取文件对象,用于获取文件的内容

reader.onload = function(e) {

}

reader.readAsDataURL(file);

reader.onloadend = function(e) {

let dataBase = e.target.result; // 获取Base64,FileReader()返回

uploadImgBase64({ //调用上传接口

file:dataBase

})

.then(res => {

if (res.data.code === 200) {

_this.lodingShow = false;

_this.alertVal = "图片上传成功";

_this.showPluginAuto();

} else {

_this.lodingShow = false;

_this.alertVal = res.data.msg;

_this.showPluginAuto();

}

})

.catch(() => {

_this.lodingShow = false;

_this.alertVal = "图片上传失败!";

_this.showPluginAuto();

});

},function (e) {

alert( e.message );

} ;

});

reader.abort();

},

function(e) {

plus.nativeUI.toast("读取拍照文件错误:" + e.message);

}

);

},

function() {

alert("拍照失败");

}

);

});

}

},

html5打包成app不能拍照,vue项目打包成app无法使用input调用相机相关推荐

  1. electron 打包 php,electron 将现有vue项目改成支持electron桌面端应用

    vue过滤器和组件化 !DOCTYPE htmlhtml lang="en"head meta charset="UTF-8" meta name=" ...

  2. 使用nw.js将vue项目打包为可在xp系统运行的桌面程序

    前情提要 在nw.js入门最如丝般润滑的教程一文中,作者介绍了简单的使用nw运行html文件为桌面程序以及将html文件打包为桌面可执行文件exe. 看vuecli创建的工程打包成exe文件可直接从[ ...

  3. Vue项目打包成桌面程序exe除了使用electron-vue你还可以这样

    场景 electron-vue 基于 vue (基本上是它听起来的样子) 来构造 electron 应用程序的样板代码. 该项目的目的,是为了要避免使用 vue 手动建立起 electron 应用程序 ...

  4. vue项目打包App

    本地的vue项目打包成App.这里以Hbuilder为例.首选命令行进入项目的目录执行 npm run build  打包成功之后再项目下回生成一个dlist 文件夹.在Hbuilder中导入dlis ...

  5. Hbuilder将vue项目打包为app(具体步骤和注意点)

    Hbuilder将vue项目打包为app(具体步骤和注意点) 打包配置 进行打包 注意事项 打包配置 1.打开Hbuider,点击左上角文件,点击新建,然后点击项目.项目类型要选择5+App,项目名称 ...

  6. Vue项目打包移动端App(App打包教程),简便直接

    一.Vue项目打包移动端APP 需要准备的工具:Hbuilder 二.首先打包vue到dist目录 npm run build 三.然后再Hbuilder中打开dist目录 首先可以看到dist目录的 ...

  7. 教你如何3分钟把VUE项目打包成apk,真的只要3分钟

    前提准备 使用vue-cli3搭建的项目 工具 HBuilder X,他的图标长这个样子,点击下载 做前端的大多数小伙伴们都应该知道,使用起来轻巧.急速,但是他主要是针对于VUE生态打造的,相对于 v ...

  8. vue项目打包成exe可执行文件

    Vue项目打包成exe可执行文件 实现思路:从electron官网上拉取代码,把官网上拉取下来项目中的index.html替换成 自己vue项目打包好的dist文件中的index.html,输入打包e ...

  9. vue项目打包成.exe桌面应用

    1.将vue项目打包成dist文件:npm run build:prod 2.新建文件夹,使用git下载(下载其中一种就行) gitee git clone https://gitee.com/wal ...

最新文章

  1. useradd 命令详解 - [命令操作]
  2. JAVA (集合和数据结构)
  3. Google Maps打开出现internal error错误
  4. Spring 框架中有哪些不同类型的事件?
  5. SAP JAM的自定义widget编辑功能
  6. 混沌数学之Rössler(若斯叻)吸引子
  7. jpg格式如何转eps路径_jpg/png格式图片转eps格式的方法总结
  8. xcode6-beta下载
  9. 项目管理--项目组织
  10. 天河三号是量子计算机吗,“天河三号”原型机亮相,排名有望继续世界第一
  11. 国外拜访客户,实用小贴士
  12. GitHub上嵌入式相关的高星开源项目
  13. vivado导入tcl例程
  14. c# windows form 音频切割解决方案
  15. mysql中索引的作用是什么_详解mysql中索引的作用
  16. VUE3学习笔记(二)VUE2 node.js 版本高
  17. 【Unity3D】Unity 组件 ③ ( 为物体添加 AudioSource 组件 | 添加 AudioSource 组件 | 导入音频文件 | 为组件设置音频 | Transform 变换组件 )
  18. [Unity2D入门教程]简单制作仿植物大战僵尸游戏之⑤制作更多的敌人Attacker以及防御者Defender
  19. 对日项目中的PG/SE/PL/PM中负责的工作是什么?
  20. Machine Learning Onramp on MATLAB 学习笔记

热门文章

  1. 速收藏 超系统的大数据学习路线
  2. html input标签的属性有哪些?input标签的用法总结(附实例)
  3. 二叉树由两种遍历推出另一种遍历
  4. NC | 中国农大草业学院杨高文组揭示发现多因子干扰会降低土壤微生物多样性的积极效应...
  5. 部署streamlit工程到Heroku
  6. C语言中头文件包含的处理原则
  7. 地摊经济火了?看看测试工程师如何深入分析,这测试思维牛逼了!
  8. 大泽动力30kw静音柴油发电机TO32000ET 颜色可选择
  9. 数据分析 时间序列分析 AR模型
  10. java正态分布_使用Java计算正态分布