`window.XMLHttpRequest`是未定义的
我正在修复一个JavaScript window
元素的问题。 我已经做了经典:
-
npm install jQuery
-
npm update
然后,在第1行的'server.js'文件中
var $ = require('jQuery');
在我的Ubuntu上,这个代码运行良好,没有问题,应用程序继续前进。 在Windows 7上有一个我不能与之战斗的怪物。
编写node server.js
在我的CMD(与pipe理权限),我看到这个味精:
我只是不能把这个原因: window.XMLHttpRequest is undefined
。 我是一个好奇的人,所以我发现window.XMLHttpRequest
被初始化,以及谁/什么适用于此:
在http://github.com/coolaj86/node-jquery/blob/master/lib/node-jquery.js的第8行。
window.XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
为什么没有做好工作?
https://github.com/driverdan/node-XMLHttpRequest/blob/master/lib/XMLHttpRequest.js这里是xmlhttprequest代码。
解:
– 从2.5.0到3.0.0版本安装python(免费)
– 安装Visual Express 2010或更高版本(免费)
你需要安装npm的xmlhttprequest模块:
npm install xmlhttprequest
但通常情况下,它只是一个浏览器对象,您应该在服务器上使用它: http : //nodejs.org/docs/latest/api/http.html
你需要手动修补你的node_module/jquery/lib/node-jquery.js
文件!
将这些行(第4行和第5行)更改为:
if(window == null ) { window = require('jsdom').jsdom().createWindow(); ...
至:
if (!window || !window.document) { window = require('jsdom').createWindow(); window.document = require('jsdom').jsdom(); ...