nodejs requier()方法

发布于 2022-09-02 15:27:57 字数 946 浏览 22 评论 0

在使用eventproxy插件的时候,
因为我是跨页面调用和监听,
demo
A.js

var eventproxy = require('eventproxy')
var ep = new eventproxy();

ep.on('test',function(data){
console.log(data)
})

b.js

var eventproxy = require('eventproxy')
var ep = new eventproxy();

ep.emit('test',"abc")

在运行的过程中,ep.on却无法打印出其值,猜测:可能是ep不是同一个对象,导致的

所以使用require包装一下

eventproxy.js

var eventproxy = require('eventproxy')
var ep = new eventproxy();
module.exports = ep;

A.js

var ep = require('../eventproxy')

// ...此处代码同上

b.js

var ep = require('../eventproxy')

// ...此处代码同上

ep.on(funciton(data){
//发现data的值已经存在了
})

PS:因为本人nodejs,基础不太好,项目所用,不是慢慢积累型学习,
所以想问下各位:
require()函数是不是一次加载?意思是,是不是类似于一个静态instanse实例,如果加载完成成,则会直接返回,不会再次加载

从实验来看,require()函数是一次加载,但是不确定,所以麻烦问下各位,谢谢!
也就是想了解下require()函数的加载机制

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

╭ゆ眷念 2022-09-09 15:27:57

require函数对模块只加载一次~~

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文