有时候在项目中须要使用jq在node中,可是使用起来却不是那么友好,那么如今该怎么作?改写JQ插件?将JQ插件打包成npm包,再在项目中进行引用?显然这些相比较于难度都比较大。接下来介绍一种简单的方法。html
首先安装jquery以及jsdom。node
jquery:https://www.npmjs.com/package/jqueryjquery
jsdom:https://www.npmjs.com/package/jsdomnpm
命令以下:dom
npm install jquery
npm install jsdom
安装完成以后,在项目中引入函数
const $ = require('jquery')(require("jsdom").jsdom().defaultView);
以上代码为老版本的代码,在jsdom更新后,不可用ui
新版本的使用方法为:spa
const jsdom = require('jsdom'); const {JSDOM} = jsdom; const {document} = (new JSDOM('<!doctype html><html><body></body></html>')).window; global.document = document; const window = document.defaultView; const $ = require('jquery')(window);
将这些文件引入到jq所在的目录中,而且将原来jq声明的当即执行函数进行替换。插件
(function($) {
//some var //some function //dosometing
})(jQuery);
最终的形式相似于这样code
const jsdom = require('jsdom'); const {JSDOM} = jsdom; const {document} = (new JSDOM('<!doctype html><html><body></body></html>')).window; global.document = document; const window = document.defaultView; const $ = require('jquery')(window);
//some var //some function //dosometing
而后能够根据node的写法,将本身的函数暴露出去。