Mam nową instalację node.js uruchomionych na Windows 7 i próbuję uruchomić bardzo prosty skrypt jQuery o nazwie a.js
, który zawiera tylko:Błędy przy użyciu jQuery z node.js
require("jquery");
$().jquery;
Niestety, to nie będzie działać z JQuery, dając mi TypeError:
C:\Users\Ian>node a.js
C:\Users\Ian\node_modules\jquery\lib\node-jquery.js:10
window.XMLHttpRequest.prototype.withCredentials = false;
^
TypeError: Cannot read property 'prototype' of undefined
at create (C:\Users\Ian\node_modules\jquery\lib\node-jquery.js:10:26)
at C:\Users\Ian\node_modules\jquery\lib\node-jquery.js:9435:18
at Object.<anonymous> (C:\Users\Ian\node_modules\jquery\lib\node-jquery.js:9437:2)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (C:\Users\Ian\a.js:1:63)
znalazłem kilka raportów o błędach na temat tego błędu poprzez Google, z których większość sugerują Obniżanie jQuery. Kiedy jednak to zrobię, dostaję inny błąd. Poniżej jest z JQuery 1.6.3:
C:\Users\Ian>node a.js
module.js:340
throw err;
^
Error: Cannot find module 'location'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at create (C:\Users\Ian\node_modules\jquery\node-jquery.js:6:33)
at C:\Users\Ian\node_modules\jquery\node-jquery.js:9065:18
at Object.<anonymous> (C:\Users\Ian\node_modules\jquery\node-jquery.js:9067:2)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
Może ktoś sugerują, co może być nie tak? Próbowałem różnych reinstalacji oprogramowania bez powodzenia. Próbowałem zarówno npm install -g
i npm install
zarówno dla domyślnej wersji jquery, a także [email protected]
Edytuj: This question - jeszcze nieodebrane - wydaje się powiązane.
Dlaczego używasz jQuery po stronie serwera? – SLaks
No good answer sorry @SLaks - Używam cudzego kodu, który uruchamia JQuery po stronie serwera. Kiedy nie udało mi się uzyskać tego działającego, wymyśliłem mój trywialny przykład testowy, aby upewnić się, że problem dotyczy tylko części JQuery, a nie czegokolwiek innego w kodzie drugiej osoby. – Ina
@Ina Tak, ale to jest problem, jQuery nie jest biblioteką serwerów, opiera się na rzeczach nieobecnych w węźle. –