Javascript TypeError:$ .ajax不是函数问题

时间:2018-05-20 10:03:44

标签: javascript node.js ajax

首先,我的javascript代码如下。

var $ = require('jquery');

var url_path = "http://192.168.1.232:9000/get";
$.ajax({
    type: "GET",
    url: "http://192.168.1.232:9000/get?callback=?",
    dataType: 'jsonp',
    async: true,
    error: function () {
       alert("Error is occured...");
    },
    success: function(data) {
        console.log("send to cli cuccessfully!!!");
    }
});

但是当我键入节点server.js'在终端上,发生错误说" $ .ajax不是函数"。然后我通过添加

找到了解决方案
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>

但我只有javascript文件,我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

要使jQuery在Node中工作,需要一个包含文档的窗口。由于Node中本身不存在这样的窗口,因此可以通过诸如jsdom之类的工具来模拟。这可用于测试目的。

require("jsdom").env("", function(err, window) {
  if (err) {
    console.error(err);
    return;
  }
  var $ = require("jquery")(window);

  $.ajax({
    url: "uuu",
    type: "GET",
    data: null,
    dataType: "json",
    success: function() {
      console.log("success!")
    },
    error: function() {
      console.log("error")
    }
  });
});

Source