0

nativescript 용 플러그인 이미지 선택기를 사용하고 예제 코드를 복사하여 작동 방식을 확인하고이를 내 코드에 적용했습니다. 그러나 코드는 작동하지 않습니다. 버튼을 탭하면 기기의 화면 갤러리를 열어야한다고 가정하지만 버튼을 누르면 아무런 변화가 없습니다.nativescript 이미지 선택기가 작동하지 않습니다.

아래 코드는 이것을 구현 한 방법입니다.

album_list.component.ts I는 HTML에서 함수의 로그 버튼을 누르 말했듯

<StackLayout> 
     <Button text="Pick Multiple Images" (tap)="onSelectMultipleTap()" > </Button> 
</StackLayout> 

, album_list.component.html

import { Component } from '@angular/core'; 
import { RouterExtensions } from 'nativescript-angular/router'; 

//image picker 
var imagepicker = require("nativescript-imagepicker"); 


@Component({ 
    selector:'album_list', 
    moduleId: module.id, 
    templateUrl: "album_list.component.html", 

}) 

export class AlbumListComponent{ 

    constructor(private routerExt: RouterExtensions){} 


    ngOnInit() { 

    } 

    onSelectMultipleTap() { 
     console.log('Im in'); 

     function selectImages() { 
      var context = imagepicker.create({ 
       mode: "multiple" 
      }); 

      context 
       .authorize() 
       .then(function() { 
        return context.present(); 
       }) 
       .then(function(selection) { 
        console.log("Selection done:"); 
        selection.forEach(function(selected) { 
         console.log(" - " + selected.uri); 
        }); 
       }).catch(function (e) { 
        console.log(e); 
       }); 
     } 

    } 


} 

onSelectMultipleTap 나타납니다.

감사합니다.

답변

0

selectImages()를 호출하지 않고 방금 선언하면됩니다. 다음으로 바꾸기 :

onSelectMultipleTap() { 
    console.log('Im in'); 

    function selectImages() { 
     var context = imagepicker.create({ 
      mode: "multiple" 
     }); 

     context 
      .authorize() 
      .then(function() { 
       return context.present(); 
      }) 
      .then(function(selection) { 
       console.log("Selection done:"); 
       selection.forEach(function(selected) { 
        console.log(" - " + selected.uri); 
       }); 
      }).catch(function (e) { 
       console.log(e); 
      }); 
    } 
    selectImages() 

} 
+0

감사합니다. Davecoffin! :) 그것은 정확하게 이것이었다! – Carlos