Phonegap pictureSource.PHOTOLIBRARY不适用于Angular

Phonegap pictureSource.PHOTOLIBRARY doesn't work with angular

本文关键字:适用于 Angular 不适用 PHOTOLIBRARY pictureSource Phonegap      更新时间:2023-09-26

没有角度就可以正常工作:

<button onclick="getPhoto(pictureSource.PHOTOLIBRARY);">From Photo Album</button>
<script type="text/javascript">
function onPhotoURISuccess(imageURI) {
  alert(imageURI)
}
function getPhoto(source) {
  navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 50,
    destinationType: destinationType.imageURI,
    sourceType: source });
}
function onFail(message) {
  alert('Failed because: ' + message);
}
    </script>

但是当我尝试使用 angular 2 并且我的代码不起作用时:

<button (click)="getPhoto(pictureSource.PHOTOLIBRARY)">From Photo Album</button>
getPhoto(source) {
    alert(111);
    navigator.camera.getPicture(this.onSuccess, this.onFail, { quality: 50,
        destinationType: navigator.camera.DestinationType.imageURI,
        sourceType: source });
}
onSuccess(imageData) {
    this.photo = imageURI;
}
onFail(message) {
    alert('Photo not loaded, because: ' + message);
}

当我单击按钮时,getPhoto功能不起作用。因为图片来源.照片库在功能。

此 API 可能未由 Angulars 区域修补。尝试显式使用区域

constructor(private zone: NgZone) {}
getPhoto(source) {
  alert(111);
  zone.run(() => {
    navigator.camera.getPicture(this.onSuccess, this.onFail, { quality: 50,
      destinationType: navigator.camera.DestinationType.imageURI,
      sourceType: source });
  });
}

(不确定语法是否正确,我不是 TS 开发人员)