recherche

Maison  >  Questions et réponses  >  le corps du texte

node.js - nodejs requier()方法

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

1

2

3

4

5

6

7

<code>var eventproxy = require('eventproxy')

var ep = new eventproxy();

 

ep.on('test',function(data){

console.log(data)

})

</code>

b.js

1

2

3

4

5

<code>var eventproxy = require('eventproxy')

var ep = new eventproxy();

 

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

</code>

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

所以使用require包装一下

eventproxy.js

1

2

3

4

<code>var eventproxy = require('eventproxy')

var ep = new eventproxy();

module.exports = ep;

</code>

A.js

1

2

3

4

<code>var ep = require('../eventproxy')

 

// ...此处代码同上

</code>

b.js

1

2

3

4

5

6

7

8

<code>var ep = require('../eventproxy')

 

// ...此处代码同上

 

ep.on(funciton(data){

//发现data的值已经存在了

})

</code>

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

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

PHP中文网PHP中文网2896 Il y a quelques jours631

répondre à tous(1)je répondrai

  • 天蓬老师

    天蓬老师2017-04-17 13:52:12

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

    répondre
    0
  • Annulerrépondre