i use google picker to work with google drive in angular 11 but after select file from google picker, does not call onSave function in myCallback from handleAuthResult and i get error.
my code is here :
handleAuthResult(authResult:any){
// let src:any;
if (authResult && !authResult.error) {
if (authResult.access_token) {
let view = new google.picker.View(google.picker.ViewId.DOCS);
let pickerBuilder = new google.picker.PickerBuilder();
view.setMimeTypes("image/png,image/jpeg,image/jpg");
let picker = pickerBuilder.addViewGroup(
new google.picker.ViewGroup(google.picker.ViewId.DOCS).
addView(google.picker.ViewId.DOCUMENTS).
addView(google.picker.ViewId.PRESENTATIONS).
addView(google.picker.ViewId.SPREADSHEETS) ).
enableFeature(google.picker.Feature.MULTISELECT_ENABLED).
setLocale('fa').
setOAuthToken(authResult.access_token).
addView(view).
addView(new google.picker.DocsUploadView()).
setCallback(this.myCallback).
build();
picker.setVisible(true);
}
}
}
myCallback(e){
// console.log(e);
if(e[google.picker.Response.ACTION] == google.picker.Action.PICKED){
let doc = e[google.picker.Response.DOCUMENTS][0];
let src = doc[google.picker.Document.URL];
console.log("Document selected is", doc, "and URL is ", src);
this.onSave(doc.id);
}
}
onSave(data){console.log(data)}
}
error
zone.js:182 Uncaught TypeError: this.onSave is not a function
at d2.myCallback [as Nb] (profile.component.ts:140:12)
my code run well but when i want to call function onSave get error.
please help me !!!!