• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Asynchroniczny node js

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
414 wizyt
pytanie zadane 1 lutego 2021 w JavaScript przez Author[] Gaduła (3,130 p.)
zamknięte 1 lutego 2021 przez Author[]

Mam obiekt ze statyczną funkcją uploadFile():

const current_window = require("electron").remote.getCurrentWindow();
    const upload_dialog_options = {
        title: "Choose files to open",
        buttonLabel: "Choose files",
        properties: ['openFile','multiSelections']
    }
    let promise = new Promise((resolve)=>{
      dialog.showOpenDialog(current_window, upload_dialog_options).then((upload_file)=>{
        let file_path = upload_file.filePaths;
        if (upload_file.canceled==false)
        {
            return resolve(file_path);
        }
        else
        {
          return resolve(file_path);
        }
        
    });
    });
  }

następnie wywołuję ją w innej funkcji:

objekt.uploadFile().then((value)=>{console.log(value);})

Pojawia się błąd:

Uncaught (in promise) TypeError: Cannot read property 'then' of undefined

Nie wiem co robię źle. Z góry dziękuję za pomoc.

komentarz zamknięcia: Otrzymałem rozwiązanie
komentarz 1 lutego 2021 przez Marak123 Stary wyjadacz (11,190 p.)
Czym jest "dialog" w 8 lini??

Gdzie masz zdefiniowaną funkcję uploadFile()??

I albo jestem ślepy albo ten ostatni nawias jest nie potrzebny ostatnia linijka.

A odnośnie błędu to oznacza ze ta funkcja uploadFile() nic nie zwraca bo nie wie co ma zwrócić i dlatego then nie wie co ma odczytać.
komentarz 1 lutego 2021 przez Author[] Gaduła (3,130 p.)
Ostatni nawias to nawias obiektu zapomniałem go usunąć po skopiowaniu kodu

1 odpowiedź

+2 głosów
odpowiedź 1 lutego 2021 przez xnerwo Gaduła (3,270 p.)
wybrane 1 lutego 2021 przez Author[]
 
Najlepsza

Hej, sprawdź czy ten problem na Stack Overflow pomoże :)

komentarz 1 lutego 2021 przez Author[] Gaduła (3,130 p.)
Dziękuję za odpowiedź. Po zastosowania rozwiązania ze zwracaniem obietnicy wszystko działa.

Podobne pytania

0 głosów
0 odpowiedzi 154 wizyt
0 głosów
1 odpowiedź 175 wizyt
0 głosów
1 odpowiedź 185 wizyt
pytanie zadane 18 listopada 2019 w JavaScript przez Krzysztofson Użytkownik (620 p.)

93,103 zapytań

142,077 odpowiedzi

321,575 komentarzy

62,445 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...