是否有可能在服务器端使用Node.js使用jQuery选择器/DOM操作?
当前回答
我的工作代码是:
npm install jquery
然后:
global.jQuery = require('jquery');
global.$ = global.jQuery;
或者如果窗口存在,则:
typeof window !== "undefined" ? window : this;
window.jQuery = require('jquery');
window.$ = window.jQuery;
其他回答
在写这篇文章的时候,也有保持的Cheerio。
快速,灵活,精益的实现核心jQuery设计 特别是针对服务器。
我相信这个问题的答案是肯定的。 https://github.com/tmpvar/jsdom
var navigator = { userAgent: "node-js" };
var jQuery = require("./node-jquery").jQueryInit(window, navigator);
jQuery模块可以通过以下方式安装:
npm install jquery
例子:
var $ = require('jquery');
var http = require('http');
var options = {
host: 'jquery.com',
port: 80,
path: '/'
};
var html = '';
http.get(options, function(res) {
res.on('data', function(data) {
// collect the data chunks to the variable named "html"
html += data;
}).on('end', function() {
// the whole of webpage data has been collected. parsing time!
var title = $(html).find('title').text();
console.log(title);
});
});
jQuery在Node.js中的引用**:
http://quaintous.com/2015/07/31/jqery-node-mystery/ http://www.hacksparrow.com/jquery-with-node-js.html
首先,安装它
npm install jquery -S
安装后,您可以如下所示使用它
import $ from 'jquery';
window.jQuery = window.$ = $;
$(selector).hide();
你可以查看我写的完整教程:https://medium.com/fbdevclagos/how-to-use-jquery-on-node-df731bd6abc7
从jsdom v10开始,.env()函数已弃用。在尝试了很多需要jquery的东西之后,我这样做了:
Var jsdom = require('jsdom'); const {JSDOM} = JSDOM; const {window} = new JSDOM(); const {document} = (new JSDOM(")).window; 全球。文档=文档; var $ = jQuery = require(' jQuery ')(window);
希望这对你或任何面临这类问题的人有所帮助。