在NodeJs中使用jQuery?
有時候在項目中需要使用jq在node中,但是使用起來卻不是那么友好,那么現在該怎么做?改寫JQ插件?將JQ插件打包成npm包,再在項目中進行引用?顯然這些相比較於難度都比較大。接下來介紹一種簡單的方法。
首先安裝jquery以及jsdom。
jquery:https://www.npmjs.com/package/jquery
jsdom:https://www.npmjs.com/package/jsdom
命令如下:
npm install jquery
npm install jsdom
安裝完成之后,在項目中引入
const $ = require('jquery')(require("jsdom").jsdom().defaultView);
以上代碼為老版本的代碼,在jsdom更新后,不可用
新版本的使用方法為:
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);
最終的形式類似於這樣
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的寫法,將自己的函數暴露出去。
