【发布时间】:2017-09-07 13:42:09
【问题描述】:
我正在使用cropper.js 来裁剪图像 我写了一个指令,它将获取图像 src
return {
restrict: 'A',
controller: _cropperController,
bindToController: {
imagesrc:"=?"
},
link:function($scope, $element, $attrs, ctrl){
var img = document.createElement("img");
img.src = ctrl.imagesrc;
img.id='image';
document.getElementsByTagName("body")[0].appendChild(img);
Cropper.setDefaults({
checkCrossOrigin: false
});
var cropper = new Cropper(img, {
aspectRatio: 1 / 1,
checkCrossOrigin: false,
crop: function(e) {
console.log(e.detail.x);
console.log(e.detail.y);
}
});
if(cropper.getCroppedCanvas()){
var imgurl = cropper.getCroppedCanvas().toDataURL();
ctrl.imagesrc= imgurl;
}
}
};
然后创建图像元素,将其附加到 dom 并将图像传递给裁剪器构造函数
我已将默认选项 checkCrossOrigin 设置为 false 但仍然报错
请求中没有“Access-Control-Allow-Origin”标头 资源。因此不允许使用原点“http://localhost:9090” 访问。
任何帮助将不胜感激。
【问题讨论】:
-
“我已将默认选项 checkCrossOrigin 设置为 false,但仍然给出错误” - 当然可以……你不能简单地“禁用”它- 您从 获取图像的远程方是必须允许这样做的一方。
标签: javascript angularjs cropper cropperjs