Node.js中使用jQuery的做法
首先,我们得安装jquery,npminstalljquery。安装后的版本是3.1.0
接着,第一感觉我们会使用var$=require('jquery')。
将以下代码保存为app.js
var$=require('jquery') $("body").append("<div>TEST</div>"); console.log($("body").html());
运行nodeapp.js。提示错误:
Error:jQueryrequiresawindowwithadocument
那么我们该怎么做呢?
在npm的jquery安装包首页,我们看到可以使用jsdom进行模拟一个document。
require("jsdom").env("",function(err,window){ if(err){ console.error(err); return; } var$=require("jquery")(window); $("body").append("<div>TEST</div>"); console.log($("body").html()); });
运行,结果OK。
上面的代码,有一个让我不太舒服的地方就是要在回调函数中进行操作。那么我们如何做才可以不在回调函数中进行引入jquery呢?
var$=require('jquery')(require("jsdom").jsdom().defaultView); $("body").append("<div>TEST</div>"); console.log($("body").html());
一样运行OK。