8

node.js v0.10.2 と Express v3.1.1 (現時点では最新) を実行すると、次のエラーが発生します。

/root/dmr-addresses/node_modules/jquery/lib/node-jquery.js:10
window.XMLHttpRequest.prototype.withCredentials = false;
                     ^
TypeError: Cannot read property 'prototype' of undefined
  at create (/root/dmr-addresses/node_modules/jquery/lib/node-jquery.js:10:26)
  at /root/dmr-addresses/node_modules/jquery/lib/node-jquery.js:9503:18
  at Object.<anonymous> (/root/dmr-addresses/node_modules/jquery/lib/node-jquery.js:9505: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> (/root/dmr-addresses/address/log.js:1:71)

log.js の 1 行目は次のとおりです。

var $ = require('jquery');

実行してみましnpm install jqueryたが、問題は解決していません。

4

3 に答える 3

1

これは、node-jquery が依存する jsdom モジュールの問題のようです。これは既知の問題であり、修正されているようですが、まだ npm には公開されていません。

確認してください: https://github.com/coolaj86/node-jquery/issues/52

于 2013-05-04T15:27:23.647 に答える
1

Nodeサーバーコードには実際にはプロトタイプオブジェクトはありません。すべてがはるかに優れた__ proto __ オブジェクトに格納されており、 Object.create/definePropertyを使用する必要があります。

正確に何をしようとしていますか?ノードで ajax クエリを実行しますか? その場合、Nodes http.requestを使用する必要があります

例は次のとおりです。

require('request').post({
    "uri"     : "http://example.com/",
    "headers" : {
        'content-type': 'application/json'
    },
    "body"    : "hello=world"
},
function(e,r,b){
    // e = errors, r = response and b = returned body
    console.log(b,r.statusCode));
});
于 2013-04-09T09:47:24.793 に答える