在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 jquerynpm 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的写法,将自己的函数暴露出去。

转载于:https://www.cnblogs.com/DonaHero/p/10001804.html

NodeJs中使用jQuery?相关推荐

  1. Nodejs 中的包、npm 、第三方模块、 package.json 以及 cnpm

    一.包与 NPM 包Nodejs 中除了它自己提供的核心模块外,我们可以自定义模块,也可以使用第三方的 模块.Nodejs 中第三方模块由包组成,可以通过包来对一组具有相互依赖关系的模块进行 统一管理 ...

  2. 5.Nodejs中的包、npm、第三方模块、package.json以及cnpm

    1.包 Nodejs中除了它自己提供的核心模块(内置模块)外,我们可以自定义模块 ,也可以使用第三方模块.Nodejs中的第三方模块由包组成,它可以通过包来对一组具有相互依赖关系的模块进行统一管理. ...

  3. vue中引入jquery报错问题

    vue-cli搭建的vue项目中使用到jquery插件,需要引入jquery, 在无任何配置的情况下,直接在组件中import引入,在mounted时候打印$ 会显示undefined报错问题, 感觉 ...

  4. ajax在项目中怎么使用,我如何添加项目在sql中使用jQuery(ajax)通过web服务

    我有一个web服务,并在其中有两种方法(select,insertdata).我想用jquery在sql中插入一条记录.我怎样才能做到这一点?我已经制作了该代码,但它不起作用.请帮助我.我如何添加项目 ...

  5. js html保存json,如何在json文件中存储jQuery或javascript变量?

    我可以知道有没有机会将jquery变量保存在json文件中?提前致谢.如何在json文件中存储jQuery或javascript变量? 我: var image='/test/test.png'; 我 ...

  6. nodejs+html转换pdf,Nodejs中使用phantom将html转为pdf或图片格式的方法

    最近在项目中遇到需要把html页面转换为pdf的需求,并且转换成的pdf文件要保留原有html的样式和图片.也就是说,html页面的图片.表格.样式等都需要完整的保存下来. 最初找到三种方法来实现这个 ...

  7. nodeJS中读写文件方法的区别

    导言:nodejs中所有与文件相关的操作都在fs模块中,而读写操作又是我们会经常用到的操作,nodejs的fs模块针对读操作为我们提供了readFile,read, createReadStream三 ...

  8. nodejs+html转换pdf,Nodejs中使用phantom将html转为pdf或图片格式的方法.pdf

    Nodejs中中使使用用phantom将将html转转为为pdf或或图图片片格格式式的的方方法法 最近在项目中遇到需要把html页面转换为pdf 的需求,并且转换 的pdf文件要保留原有html的样式 ...

  9. vue中引入jquery

    1.在项目中安装jquery. npm install jquery --save-dev 2.在项目根目录下的build/webpack.base.conf.js文件中: ① 先写以下代码 var ...

最新文章

  1. vue中key的作用
  2. WiX安装选项--环境变量
  3. 块格式化上下文(Block Formatting Context,BFC)
  4. NIO中的几个基础概念
  5. ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存
  6. springboot格式化时间
  7. 转-JS中document对象详解
  8. 华为端口聚合命令_华为交换机两种端口聚合模式使用实例
  9. 统计软件SAS入门教程:SAS程序初步
  10. 郭盛华如今现状如何呢? 身价早过亿,网友:期待开直播
  11. 期货客户开户手续费(期货开户最低手续费)
  12. 华为HCIE-Cloud Computing知识点整理—FusionCloud
  13. VGA、DVI、HDMI、DP 接口介绍及优劣
  14. 2022年模式识别高峰论坛学习与个人感悟
  15. 左转向善,右转向恶,2020 年的九大 AI 风向标
  16. 服务器宝塔Error: connect ETIMEDOUT
  17. java计算机毕业设计计算机office课程平台MyBatis+系统+LW文档+源码+调试部署
  18. scrapy爬取斗图表情
  19. 别无分号只此一家,Python3接入支付宝身份认证接口( alipay.user.certify)体系(2021年最新攻略)
  20. fest556_FEST JavaFX编译器Maven插件

热门文章

  1. c++ 链表_链表(单向链表的建立、删除、插入、打印)
  2. 自学前端开发:想要学习成为一名优秀的前端开发者,代码之外需要关注的问题
  3. B - 数字三角形问题
  4. php忘记密码啦怎么办,后台账号密码忘记了怎么办.
  5. php myflow,WordPress安装使用Flowplayer简易指南
  6. 表达式求值(nyoj305)
  7. 单片机ADC采样算法----中位值平均滤波法
  8. 习题1.8 二分查找 (20 分) 数据结构练习
  9. iOS逆向工程- 工具详解
  10. 图像超分辨率(Super-Resolution)技术研究