ionic 项目中使用ngCordova插件$cordovaCamera筛选手机图库图片显示出来并上传
原文档请看http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/ionic%E5%9B%BE%E7%89%87%E4%B8%8A%E4%BC%A0/
1.首先下载这个插件:
可以在package.json文件中添加“cordova-plugin-device"来添加,也可以直接在ngCordova官网里找到相应的命令来下载,
命令为:
cordova plugin add cordova-plugin-camera
2.在ionic项目中要使用这个插件的页面相应的控制器里添加相应的插件名来引用,记得在依赖项里要加ngCordova,不然会出错。
3.在控制器里写入相应的js代码(这些代码在ngCordova官网插件的应用上有详细的方法调用,根据具体的需要来写自己所需要的功能的代码)我这个代码是来实现页面上要显示7张从手机相册中选择的图片,
js代码如下:
$scope.takePicture = function (img) {
var options = {
quality: 75,
destinationType: Camera.DestinationType.DATA_URL,
sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
allowEdit: true,
encodingType: Camera.EncodingType.JPEG,
targetWidth: 500,
targetHeight: 500,
popoverOptions: CameraPopoverOptions,
saveToPhotoAlbum: false
};
$cordovaCamera.getPicture(options).then(function (imageData) {
// alert(imageData);
if (img == 1) {
$scope.data.IDCardImage1 = imageData;
$scope.imgURI1 = "data:image/jpeg;base64," + imageData;
}
if (img == 2) {
$scope.data.IDCardImage2 = imageData;
$scope.imgURI2 = "data:image/jpeg;base64," + imageData;
}
if (img == 3) {
$scope.data.Qualified = imageData;
$scope.imgURI3 = "data:image/jpeg;base64," + imageData;
}
if (img == 4) {
$scope.data.CredentialImage = imageData;
$scope.imgURI4 = "data:image/jpeg;base64," + imageData;
}
if (img == 5) {
$scope.data.CarInfoImage1 = imageData;
$scope.imgURI5 = "data:image/jpeg;base64," + imageData;
}
if (img == 6) {
$scope.data.CarInfoImage2 = imageData;
$scope.imgURI6 = "data:image/jpeg;base64," + imageData;
}
if (img == 7) {
$scope.data.CarInfoImage3 = imageData;
$scope.imgURI7 = "data:image/jpeg;base64," + imageData;
} else {
return "";
}
}
);
};
$scope.take = function () {
this.takePicture();
}
4.html页面的代码如下(其中ng-src中要把图片转化为base64格式,上传到服务器)我这里只贴出了显示两张图片的代码,其他的类似:
<div class="row">
<div class="col padding" ng-click="takePicture(1)">
<img ng-src="data:image/jpeg;base64,{{data.IDCardImage1}}"
style="border: 1px dashed gray;width: 100px;height: 100px;background-color: #f0f0f0"/>
</div>
<div class="col padding" ng-click="takePicture(2)">
<img ng-src="data:image/jpeg;base64,{{data.IDCardImage2}}"
style="border: 1px dashed gray;width: 100px;height: 100px;background-color: #f0f0f0"/>
</div>
<div class="col padding"></div>
</div>
注:第一次在这里分享自己遇到的问题和解决方案,有不足的地方欢迎大家纠正、评论以及提问,有更多精彩技术分享会一直更新http://www.ncloud.hk/
ionic 项目中使用ngCordova插件$cordovaCamera筛选手机图库图片显示出来并上传的更多相关文章
- Cordova各个插件使用介绍系列(八)—$cordovaCamera筛选手机图库图片并显示
原文档请看http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/ionic%E5%9B%BE%E7%89%87%E4%B8%8A%E4%B ...
- ASP.NET中上传图片检测其是否为真实的图片 防范病毒上传至服务器
一.需求 我们在用.net开发网站时,经常会用到图片上传,可以说是每个网站必备的,大到门户网站,电商网站,政务系统,OA系统,小到企业网站,个人网站,博客网站,导航网站等等,都有用到图片上传,那么在客 ...
- ionic项目中手机状态栏显示使用$cordovaStatusbar插件
在项目中发现Android和iOS在手机状态栏样式不一样,然后就查到有一个cordova插件可以解决这个问题 1.下载插件$cordovaStatusbar命令: cordova plugin add ...
- Ionic项目中使用极光推送
Ionic项目中使用极光推送-android 对于Ionic项目中使用消息推送服务,Ionic官方提供了ngCordova项目,这个里面的提供了用angularjs封装好的消息推送服务(官方文档) ...
- Ionic项目中使用极光推送-android
对于Ionic项目中使用消息推送服务,Ionic官方提供了ngCordova项目,这个里面的提供了用angularjs封装好的消息推送服务(官方文档),使用的是GitHub上的 PushPlugin ...
- Ionic项目中如何使用Native Camera
本文介绍如何在ionic项目中使用设备的camera. Ionic版本:v3.2.0 / 2017-05-10 / MIT Licensed / Release Notes ============= ...
- ionic 项目中 使用 sass
注: 1.先安装node-sass -->> npm install --save node-sass --registry=https://registry.npm.taobao.or ...
- 从web编辑器 UEditor 中单独提取图片上传,包含多图片单图片上传以及在线涂鸦功能
UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码.(抄的...) UEditor是非常好用的富文 ...
- 在类似qq或者微信聊天中。如何根据不同的手机发送图片
原文:在类似qq或者微信聊天中.如何根据不同的手机发送图片 前一段时间,公司自己要求做多客服开发,但是对于发送图片这一块,当时很苦恼,我用自己的手机(米2)测试,不管是本地,还是云相册,最新照片. ...
随机推荐
- 【算法系列学习】线段树 区间修改,区间求和 [kuangbin带你飞]专题七 线段树 C - A Simple Problem with Integers
https://vjudge.net/contest/66989#problem/C #include<iostream> #include<cstdio> #include& ...
- JDK内置日志系统
1.Java应用中的日志功能 ================= 一般的Java应用程序中都有记录日志的需求,目前主流的记录日志的方法是在应用程序中引入log4j,用log4j来生成日志.其实,JDK ...
- java.util.NoSuchElementException: None.get的解决方法
在Java中用null表示无值返回.在Java 里,null 是一个关键字,不是一个对象,所以对它调用任何方法都是非法的 笔者就常在类型转换时见到空指针错误,便是由null的特殊性导致的 而在scal ...
- JS中作用域
var scope = 'global'; var f = function() { console.log(scope); // 输出 undefined var scope = 'f'; } f( ...
- Oracle与mysql的字段类型整理
Oralce的字段类型整理如下: Mysql的字段类型整理如下: 最后面一栏是对应JAVA的基本类型.希望对初学者有用,初学者在学习JAVA的时候,不知道怎么把JAVA的对象指向到ORALCE或者MY ...
- c# 操作monogodb的一些简单封装
public interface IDataBaseCore { } public class BasicData : IDataBaseCore { } public class Filter ...
- c# post basic 接口
string url = "http://xxxxxxxxx";//地址,请反复检查地址的准确性 string usernamePassword = "username: ...
- 面向切面编程(Aop)
AOP中的概念 AOP(Aspect Orient Programming),也就是面向切面编程.可以这样理解,面向对象编程(OOP)是从静态角度考虑程序结构,面向切面编程(AOP)是从动态角度考虑程 ...
- 全景智慧城市——NOW!!!VRSHOPPING颠覆你的购物认知!
互联网+时代,人们对现有的网络资源已经不再感冒,一般的图片.文字信息已经无法满足人们对互联网的需求,虚拟现实.身临其境的体验是不可小觑的发展趋势,尤其是VR逛街.购物,更会深入人心,再次改变人们的生活 ...
- VR全景加盟-全景智慧城市携万千创业者决战BAT
在所谓互联网思维走到末路.可穿戴设备基本昙花一现的大环境下,很多互联网人员转战VR市场,自然喜欢用互联网思维来考虑.笔者认识一些投资界人士,在谈到投资时,他们经常就问以下几句话:2B还是2C?将来有多 ...