이것이 NodeJS에서 싱글 톤으로 작동하는 이유는 무엇입니까? 내가 한 번 이상이 파일을 가져 오는 경우 본질적으로이것이 NodeJS의 싱글 톤 역할을하는 이유
const io = require('socket.io')();
const singleton = module.exports = io;
, 나는 처음 socket.io
인스턴스를 인스턴스화.
이것이 NodeJS에서 싱글 톤으로 작동하는 이유는 무엇입니까? 내가 한 번 이상이 파일을 가져 오는 경우 본질적으로이것이 NodeJS의 싱글 톤 역할을하는 이유
const io = require('socket.io')();
const singleton = module.exports = io;
, 나는 처음 socket.io
인스턴스를 인스턴스화.
모듈은 노드별로 캐시됩니다. 인스턴스를 반환하면 require
이 파일은 매번 동일한 인스턴스 (io
)를 얻게됩니다. 라인
const io = require('socket.io')();
은이 모듈이 처음으로 실행될 때만 실행됩니다. 그런 다음이 모듈을 필요로하는 모듈은 반환 된 인스턴스 만 가져옵니다. 내가 당신을 위해 명확히 수있는 다른 아무것도 https://nodejs.org/api/modules.html#modules_caching
그래서'const singleton ='코드의이 부분은 정말로 중요하지 않습니까? –
아니요. 이를 제거 할 수 있으며이 예제에서도 동일하게 작동합니다. –
있습니까 :
여기에 캐싱에 대한 공식 문서는? –