问题描述
我正在使用 ngx-image-cropper 加载和裁剪图像。根据文档有
(imageLoaded)="imageLoaded($event)"
但是当我进入打字稿调试方法“imageLoaded()”时,图像未定义! 它没有向方法传递任何东西。
在图书馆的代码中看到这个
imageLoaded: EventEmitter<void>;
所以看起来事件没有通过任何东西,即使文档说它确实通过了。就我如何访问加载的图像而言,我在这里遗漏了什么吗?
问题 - 文档没有显示在 html 中传递的任何内容,我应该传递 '$event' 吗?
imageLoaded(image: HTMLImageElement) {
// image is undefined
}
解决方法
没错!为了在方法中包含事件,您需要从 html 参数中传递 '$event'
,您确实需要将 $event 传递给将被调用的函数,尽管文档目前没有显示:
(imageLoaded)="imageLoaded($event)"
然后在被调用的函数中,你可以获得这样的数据(参考LoadedImage的文档):
imageLoaded( img: LoadedImage ) {
const width = img.original.size.width;
const height = img.original.size.height;
}