![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 728 Pomógł: 76 Dołączył: 12.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Mam taki plik, który ma korzystać z modułu:
A to moduł:
Jak wywołuję pierwszy plik to dostaję zwrotkę, że mymodule jest obiektem. Posiłkuję się dokumentacją node gdzie jest podobny przykład dla modułu square. Po za tym jak dla mnie to wygląda to tak, że zwracana jest funkcja, która zwraca obiekt i całość jest eksportowana. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Bo wyeksportowałeś funkcje anonimową, która się w żaden sposób nie wykonała. Za pierwszym razem użyłeś normalnie tej zmiennej jak funkcji, a za drugim razem użyłeś jak obiektu. Jeżeli to jest funkcja, to używaj jak funkcje, jeżeli to jest obiekt, to używaj jak obiekt. W twoim przypadku mogłoby to wyglądać tak:
Kod console.log(JSON.stringify(mymodule().calc())); Bo najpierw używasz funkcji która zwraca obiekt, w którym znowu używasz funkcji. PS. cała logika jest ostro bezsensu (IMG:style_emoticons/default/wink.gif) jak chcesz poczytać o sposobach jak można eksportować moduły, to polecam ci ten krótki tutorial: http://darrenderidder.github.io/talks/ModulePatterns/#/ |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 728 Pomógł: 76 Dołączył: 12.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Kluczowe było to, że nie przypisałem wykonania mymodule do zmiennej. Bo eksportowana jest funkcja tylko trzeba ją wykonać aby zwróciła obiekt.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 10:30 |