三、angularjs上传图片
- 上传图片需要引入插件ngFileUpload,使用bower安装方法: bower install ng-file-upload --save,安装后需要在命名app的名字js文件中注入,如下所示:
(function() {
angular.module('app', [
'ionic','ngStorage','ngFileUpload'
]);
})();
- 在相应的html中引入文件路径:<script src="lib/ng-file-upload/ng-file-upload.min.js"></script>
- 如何使用呢?在html文件中使用 ngf-select
<div class="editHeader_div" ngf-select="setStore.uploadFiles($file, $invalidFiles)">
<img class="editStoreImg" ng-src="img/{{setStore.img}}">
<p>更改头像</p>
</div>
在相应的controller中:
//上传单个文件
function uploadFiles(file, errFiles) {
vm.imgInfo = file;
console.log(file);
if (file) {
vm.img = file.name;//测试使用
//Service.upload('','',{file:file})//开发使用
}
}
在http请求如下:
//文件上传预设配置
Upload.setDefaults({
ngfAccept: "'.jpg,.png,.gif,.jpeg'",
ngfDropDisabled: 'true',
ngfPattern: '.jpg,.png,.gif,.jpeg',
ngfMaxSize: '2MB'
});
//上传文件
function upload(ctrl, name, param) {
var deferred = $q.defer(),
interfaceName = ctrl + '/' + name,
backendDetail = getBackendDetail(interfaceName); //上传文件到服务器
Upload.upload({
url: backend.url + ':' + backendDetail.port + '/' + backendDetail.service + '/' + interfaceName,
data: param || {}
}).then(function(data) {
//service返回数据
var result = data.data; //200代表接口调用成功
if (data.status === 200) {
//数据库返回错误信息
if (result && serviceErrors[result.returnCode]) {
deferred.reject('Error Services');
swal(result.message, '错误状态码:' + result.returnCode, 'error');
} else if (!result.dataInfo) {
deferred.reject('Error Image');
swal('图片上传失败', '请检查图片属性', 'error');
} else {
deferred.resolve(result);
}
} else {
deferred.reject('Error Services');
swal('提交操作失败', '错误状态码:' + data.status, 'error');
}
}, function(error) {
deferred.reject('Error Services');
swal('提交操作失败', '错误状态码:' + error.status, 'error');
}); return deferred.promise;
}
三、angularjs上传图片的更多相关文章
- angularjs上传图片
通过AngularJS实现图片上传及缩略图展示(读取文件内容) AngularJS图片上传功能的实现(读取文件内容) AngularJs实现Multipart/form-data 文件的上传(上传文件 ...
- angularjs上传图片插件使用
一. angurlajs 相关 远程 jar 包 https://code.angularjs.org/angular-1.0.1.min.js 二. 正文 1. html 部分 <!-- 需要 ...
- 篇章三:[AngularJS] 使用AngularCSS動態載入CSS
前言 使用AngularAMD動態載入Controller 使用AngularAMD動態載入Service 上列兩篇文章裡,介紹了如何如何使用AngularAMD來動態載入Controller與Ser ...
- angularjs上传图片和文件
很简单: $scope.upload = function() { var f = $scope.myFile; var fd = new FormData(); var img = document ...
- AngularJs之三
一.angularJs的指令模型ng-model指令 ng-model 指令 绑定 HTML 元素 到应用程序数据. 为应用程序数据提供类型验证(number.email.required).为应用程 ...
- angularJS(3)
angularJS(3) 一.angularJs的指令模型ng-model指令 ng-model 指令 绑定 HTML 元素 到应用程序数据. 为应用程序数据提供类型验证(number.email ...
- UEditor上传图片到七牛云储存(java)
我们的网站一般放在虚拟空间或者服务器上,图片如果存在本地目录,会占用很多空间和流量,还增加了负担,好的办法是把图片存放到云储存服务里面,平时用url去拿 云储存:普遍说又拍云和七牛比较好,看到七牛免费 ...
- UEditor上传图片到七牛云储存(c#)
我们的网站一般放在虚拟空间或者服务器上,图片如果存在本地目录,会占用很多空间和流量,还增加了负担,好的办法是把图片存放到云储存服务里面,平时用url去拿 云储存:普遍说又拍云和七牛比较好,看到七牛免费 ...
- AngularJS的相关应用
一.[AngularJS常用指令] 1.ng-app:声明Angular所管辖的区域.一般写在body或html上,原则上一个页面只有一个: <body ng- ...
随机推荐
- Prufer序列与树的计数(坑)
\(prufer\)序列: 无根树转\(prufer\)序列: 不断找编号最小的叶子节点,删掉并在序列中加入他相连的节点. \(prufer\)转无根树: 找到在目前\(prufer\)序列中未出现且 ...
- Ubuntu里面vi编辑器在编辑文本时 如何在所有行行首或行尾插入字符
例如:我这里是在每一行行首插入new :%s/^/new 在20,50行首插入new :20,50s/^/new 在每一行行尾插入@@ :%s/$/@@ 在20到50行行尾插入## :20,50s/$ ...
- 网站安全系列:跨站脚本攻击XSS
本篇博文主要从概念和应用上介绍XSS,主要内容来源于<白帽子讲web安全> XSS核心本质 XSS实际上是一种HTML注入,用户输入的数据被当成HTML的一部分来执行.防御方法核心是输入检 ...
- JavaScript设计模式(三) - 策略模式
什么是策略模式? 策略模式支持在运行时由使用者选择合适的算法,对于使用者而言不用关心背后的具体实现,由使用者自动根据当前程序执行的上下文和配置,从已有的算法列列表中选择出合适的算法来处理当前任务. ...
- 【文档】三、Mysql Binlog事件类文件和类型
在内部,服务器使用C++类文件来表示binlog事件.标准在log_event.h文件中,这些类的方法代码在log_event.cc中. log_event是基础类.其他的详细的事件子类都是来源于他. ...
- oauth2.0的授权流程详解
授权模式 1)oauth2.0 提供了四种授权模式,开发者可以根据自己的业务情况自由选择. 授权码授权模式(Authorization Code Grant) 隐式授权模式(简化模式)(Implici ...
- WPF UpdateSourceTrigger属性
TextBox中的变化并不是立即传递到源,而是在TextBox失去焦点后,源才更新.这种表现由绑定中的UpdateSourceTrigger属性来控制.它的默认值是Default,源会根据你绑定的属性 ...
- 性能调优-CPU方面,内存方面
CPU调优 首先要清楚数据库应用的分类,一般分为两类:OLTP(Online Transaction Processing,在线事务处理)和OLAP(Online Analytical Process ...
- 64位使用windbg获取Shadow SSDT
首先选择一个带界面的程序explorer.exe进行附加 kd> !process explorer.exe PROCESS ffff86893dd075c0 SessionId: Cid: 0 ...
- APU (美国AMD公司研发的加速处理器)
APU(Accelerated Processing Unit)中文名字叫加速处理器,是AMD“融聚未来”理念的产品,它第一次将中央处理器和独显核心做在一个晶片上,它同时具有高性能处理器和最新独立显卡 ...