教你如何在Node.js中使用jQuery


Posted in Javascript onAugust 28, 2016

想要在NodeJs中使用jQuery?

首先,我们得安装jquery, npm install jquery 。安装后的版本是 3.1.0

接着,第一感觉我们会使用 var $ = require('jquery') 。

将以下代码保存为app.js

var $ = require('jquery')

$("body").append("<div>TEST</div>");
console.log($("body").html());

运行 node app.js 。提示错误:

Error: jQuery requires a window with a document

那么我们该怎么做呢?

在 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。

以上就是本文给大家分享的全部内容了,希望对大家学习node.js能够有所帮助

Javascript 相关文章推荐
浅谈javascript回调函数
Dec 07 Javascript
详解JavaScript ES6中的模板字符串
Jul 28 Javascript
JS实现选项卡实例详解
Nov 17 Javascript
jQuery对象的链式操作用法分析
May 10 Javascript
JS代码实现百度地图 画圆 删除标注
Oct 12 Javascript
vue2项目使用sass的示例代码
Jun 28 Javascript
JS获取input[file]的值并显示在页面的实现方法
Mar 09 Javascript
使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题
May 14 Javascript
vue项目中运用webpack动态配置打包多种环境域名的方法
Jun 24 Javascript
JS随机密码生成算法
Sep 23 Javascript
antd中table展开行默认展示,且不需要前边的加号操作
Nov 02 Javascript
Vue3如何理解ref toRef和toRefs的区别
Feb 18 Vue.js
分享JavaScript监听全部Ajax请求事件的方法
Aug 28 #Javascript
Node.js 日志处理模块log4js
Aug 28 #Javascript
node.js中 stream使用教程
Aug 28 #Javascript
ionic组件ion-tabs选项卡切换效果实例
Aug 27 #Javascript
郁闷!ionic中获取ng-model绑定的值为undefined如何解决
Aug 27 #Javascript
ionic实现带字的toggle滑动组件
Aug 27 #Javascript
ionic实现可滑动的tab选项卡切换效果
Apr 15 #Javascript
You might like
打造计数器DIY三步曲(下)
2006/10/09 PHP
让codeigniter与swfupload整合的最佳解决方案
2014/06/12 PHP
Smarty保留变量用法分析
2016/05/23 PHP
php自定义时间转换函数示例
2016/12/07 PHP
详解PHP 二维数组排序保持键名不变
2019/03/06 PHP
PHP经典设计模式之依赖注入定义与用法详解
2019/05/21 PHP
javascript实现的距离现在多长时间后的一个格式化的日期
2009/10/29 Javascript
jquery checkbox实现单选小例
2013/11/27 Javascript
jQuery简单实现banner图片切换
2014/01/02 Javascript
js 获取页面高度和宽度兼容 ie firefox chrome等
2014/05/14 Javascript
web打印小结
2017/01/11 Javascript
angular学习之ngRoute路由机制
2017/04/12 Javascript
前端主流框架vue学习笔记第二篇
2017/07/26 Javascript
微信小程序中setInterval的使用方法
2017/09/29 Javascript
node实现简单的增删改查接口实例代码
2019/08/22 Javascript
小程序使用watch监听数据变化的方法详解
2019/09/20 Javascript
JS如何操作DOM基于表格动态展示数据
2020/10/15 Javascript
Vue2.x和Vue3.x的双向绑定原理详解
2020/11/05 Javascript
[08:29]DOTA2每周TOP10 精彩击杀集锦vol.7
2014/06/25 DOTA
[48:47]VGJ.S vs NB 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
用python实现的去除win下文本文件头部BOM的代码
2013/02/10 Python
python在命令行下使用google翻译(带语音)
2014/01/16 Python
Python使用pygame模块编写俄罗斯方块游戏的代码实例
2015/12/08 Python
Django Admin实现上传图片校验功能
2016/03/06 Python
Python字符串拼接的几种方法整理
2017/08/02 Python
Python实现基于PIL和tesseract的验证码识别功能示例
2018/07/11 Python
对Python使用mfcc的两种方式详解
2019/01/09 Python
numpy下的flatten()函数用法详解
2019/05/27 Python
Django配置Bootstrap, js实现过程详解
2020/10/13 Python
大一自我鉴定范文
2013/12/27 职场文书
课堂教学改革实施方案
2014/03/17 职场文书
采购员岗位职责
2015/02/03 职场文书
2016大学迎新欢迎词
2015/09/29 职场文书
求职信:会计求职的写作技巧
2019/04/24 职场文书
人事部:年度述职报告范文
2019/07/12 职场文书
python中的getter与setter你了解吗
2022/03/24 Python