Node.js中使用jQuery的做法
首先,我們得安裝jquery, npm install jquery 。安裝后的版本是 3.1.0
接著,第一感覺我們會(huì)使用 var $ = require('jquery') 。
將以下代碼保存為app.js
var $ = require('jquery') $("body").append("<div>TEST</div>"); console.log($("body").html());
運(yùn)行 node app.js 。提示錯(cuò)誤:
Error: jQuery requires a window with a document
那么我們該怎么做呢?
在npm的jquery安裝包首頁 ,我們看到可以使用jsdom 進(jìn)行模擬一個(gè)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()); });
運(yùn)行,結(jié)果OK。
上面的代碼,有一個(gè)讓我不太舒服的地方就是要在回調(diào)函數(shù)中進(jìn)行操作。那么我們?nèi)绾巫霾趴梢圆辉诨卣{(diào)函數(shù)中進(jìn)行引入jquery呢?
var $ = require('jquery')(require("jsdom").jsdom().defaultView); $("body").append("<div>TEST</div>"); console.log($("body").html());
一樣運(yùn)行OK。
相關(guān)文章
nodejs中簡單實(shí)現(xiàn)Javascript Promise機(jī)制的實(shí)例
這篇文章主要介紹了nodejs中簡單實(shí)現(xiàn)Javascript Promise機(jī)制的實(shí)例,本文在nodejs中簡單實(shí)現(xiàn)一個(gè)promise/A 規(guī)范,需要的朋友可以參考下2014-12-12Node.js對(duì)MongoDB數(shù)據(jù)庫實(shí)現(xiàn)模糊查詢的方法
模糊查詢是數(shù)據(jù)庫的基本操作之一,下面這篇文章主要給大家介紹了利用Node.js對(duì)MongoDB數(shù)據(jù)庫實(shí)現(xiàn)模糊查詢的方法教程,文中給出了詳細(xì)的介紹和示例代碼,對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。2017-05-05node.js中express模塊創(chuàng)建服務(wù)器和http模塊客戶端發(fā)請求
今天小編就為大家分享一篇關(guān)于node.js中express模塊創(chuàng)建服務(wù)器和http模塊客戶端發(fā)請求,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03Node.js Stream ondata觸發(fā)時(shí)機(jī)與順序的探索
今天小編就為大家分享一篇關(guān)于Node.js Stream ondata觸發(fā)時(shí)機(jī)與順序的探索,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03Windows 系統(tǒng)下安裝和部署Egret的開發(fā)環(huán)境
Egret基于TypeScript開發(fā)的,而TypeScript編譯工具tsc是基于Node.js 開發(fā)的。所以在安裝過程中,我們先需要對(duì)于基礎(chǔ)支持工具進(jìn)行安裝。2014-07-07Node.js開發(fā)者必須了解的4個(gè)JS要點(diǎn)
這篇文章主要介紹了Node.js開發(fā)者必須了解的4個(gè)JS要點(diǎn),Node.js是一個(gè)面向服務(wù)器的框架,立足于Chrome強(qiáng)大的V8 JS引擎。盡管它由C++編寫而成,但是它及其應(yīng)用是運(yùn)行在JS上的,需要的朋友可以參考下2016-02-02