Po uruchomieniu węzła w konsoli i wpisaniu nazwy var _ = require('underscore');
, _
kończy się niezdefiniowaniem. Jeśli wstawię ten sam kod do pliku i wykonam go, biblioteka podkreślników zostanie dołączona zgodnie z oczekiwaniami.Dlaczego require ('podkreślenie') zwraca undefined po wykonaniu w node.js REPL?
$ node
> var _ = require('underscore');
> console.log(_)
undefined // underscore library does not load
> var async = require('async');
undefined
> console.log(async) // async library does
{ noConflict: [Function],
nextTick: [Function],
forEach: [Function],
...
>
Ale ten sam kod w pliku .js wykonywany jako node test.js
pokazuje obie biblioteki ładowania, jak oczekiwano. Co się dzieje?
zostało to doprowadza mnie do szału! –
To też doprowadzało mnie do szaleństwa. Chcę nadmienić, że ta odpowiedź dotyczy zarówno zła, jak i podkreślenia. –