function getBase64(img){//传入图片路径,返回base64
function getBase64Image(img,width,height) {
var canvas = document.createElement("canvas");
canvas.width = width ? width : img.width;
canvas.height = height ? height : img.height;
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0, canvas.width, canvas.height);
var dataURL = canvas.toDataURL();
return dataURL;
}
var image = new Image();
image.crossOrigin = '';
image.src = img;
var base64='';
if(img){
image.onload =function (){
base64=getBase64Image(image);
console.log(base64);//位置一
}
console.log(base64);//位置二
}
}
function getBase64(img){//传入图片路径,返回base64
function getBase64Image(img,width,height) {
var canvas = document.createElement("canvas");
canvas.width = width ? width : img.width;
canvas.height = height ? height : img.height;
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0, canvas.width, canvas.height);
var dataURL = canvas.toDataURL();
return dataURL;
}
var image = new Image();
image.crossOrigin = '';
image.src = img;
var deferred=$q.defer();
if(img){
image.onload =function (){
deferred.resolve(getBase64Image(image));
}
return deferred.promise;
}
}
getBase64('https://img.alicdn.com/bao/uploaded/TB1qimQIpXXXXXbXFXXSutbFXXX.jpg')
.then(function(base64){
var binaryblob = function (s, type) {//blob对象
var byteString = atob(s);
var array = [];
for (var i = 0; i < byteString.length; i++) {
array.push(byteString.charCodeAt(i));
}
return new Blob([new Int8Array(array)], {type: type});
};
var binaryPictureBlob = function (dataUrl, filterHead) {//上传base64去头
var s = filterHead ? dataUrl.replace(/^data:image\/(png|jpeg|pjpeg|bmp|gif|x-png);base64,/, "") : dataUrl;
return binaryblob(s, "image/jpeg");
};
var pic=binaryPictureBlob(base64,true);//blob对象
//然后调接口将blob对象上传
});
var defer1 = $q.defer();
function fun() {
var deferred = $q.defer();
$timeout(function () {
deferred.notify("notify");
if (iWantResolve) {
deferred.resolve("resolved");
} else {
deferred.reject("reject");
}
}, 500);
return deferred.promise;
}
$q.when(fun())
.then(function(success){
console.log("success");
console.log(success);
},function(err){
console.log("error");
console.log(err);
},function(notify){
console.log("notify");
console.log(notify);
})
.catch(function(reson){
console.log("catch");
console.log(reson);
})
.finally(function(final){
console.log('finally');
console.log(final);
});
var deferred=$q.defer();
deferred.resolve(success)
deferred.reject(reason)
deferred.notify("notify");
$q.when(fun())
.then(function(success){
console.log("success");
console.log(success);
},function(err){
console.log("error");
console.log(err);
},function(notify){
console.log("notify");
console.log(notify);
})
.catch(function(reson){
console.log("catch");
console.log(reson);
})
.finally(function(final){
console.log('finally');
console.log(final);
});
fun().then(successCallback, errorCallback, notifyCallback);
deferred.resolve(success)的success对应successCallback(success)的success。
var iWantResolve = true;//没有实际意思,测试运行resolve或reject
function promise1() {
return $q(function (resolve, reject) {
$timeout(function () {
if (iWantResolve) {
resolve("promise1 resolved");
} else {
reject("promise1 reject");
}
}, 1000)
})
}
promise1()
.then(function (s1) {//success callback
console.log(s1);
})
.catch(function (err1) {//error callback
console.log(err1);
});
function promise2() {
var deferred = $q.defer();
$timeout(function () {
deferred.notify("promise2 notify");
if (iWantResolve) {
deferred.resolve("promise2 resolved");
} else {
deferred.reject("promise2 reject");
}
}, 500);
return deferred.promise;
}
promise2()
.then(function (s2) {
console.log(s2);
}, function (err2) {
console.log(err2);
});
$q.all([promise1(), promise2()])
.then(function (dataArr) {
//promise都成功执行后的回调函数
console.log("$q.all: ", dataArr);
}, function (err) {
console.log("$q.all: ", err)
});
defer=$.Deferred(); defer.promise();
var deferred=$q.defer(); deferred.promise;
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有