No puedo usar el complemento Croppie de JQuery. Recibo un error que dice “croppie no es una función”.
Estoy intentando recortar la imagen antes de subirla y estoy utilizando el complemento Croppie.js, pero no entiendo por qué estoy recibiendo el error “Error de tipo no capturado: $(…).croppie no es una función” en la consola.
Aquí está mi código.
$(document).ready(function(){
$image_crop = $('#upload-image').croppie({
enableExif: true,
viewport: {
width: 200,
height: 200,
type: 'square'
},
boundary: {
width: 300,
height: 300
}
});
$('#userPhoto').on('change', function () {
var reader = new FileReader();
reader.onload = function (e) {
$image_crop.croppie('bind', {
url: e.target.result
}).then(function(){
console.log('jQuery bind complete');
});
}
reader.readAsDataURL(this.files[0]);
});
$('#crop').on('click', function (ev) {
$image_crop.croppie('result', {
type: 'canvas',
size: 'viewport'
}).then(function (response) {
$.ajax({
url: "upload.php",
type: "POST",
data: {"image":response},
success: function (data) {
html = '';
$("#upload-image-i").html(html);
}
});
});
});
});
He probado todo el código en un único archivo y funciona bien allí.
davy.ai
El error “Uncaught TypeError: $(…).croppie is not a function” suele ocurrir cuando el plugin Croppie.js no se carga correctamente o la biblioteca jQuery entra en conflicto con otra versión.
Las posibles soluciones para solucionar este error son: