NodeJs require ( './ file.js') 문제
내 NodeJs 프로젝트에서 실행할 파일을 포함하여 문제가 있습니다.
동일한 디렉토리에 두 개의 파일이 있습니다.
a.js
var test = "Hello World";
과
b.js
require('./a.js');
console.log(test);
b.js를 실행 node b.js
하고 오류가 발생 ReferenceError: test is not defined
합니다.
http://nodejs.org/api/modules.html#modules_file_modules 문서를 살펴 보았습니다.
내가 무엇을 놓치고 있습니까? 미리 감사드립니다.
변수를 내보내도록 a.js 를 변경하십시오 .
exports.test = "Hello World";
의 반환 값을 require('./a.js')
변수에 할당합니다 .
var a = require('./a.js');
console.log(a.test);
자주보고 사용하는 또 다른 패턴은 다음과 같이 a.js 의 module.exports
객체에 무언가 (객체, 함수)를 할당하는 것입니다 .
module.exports = { big: "string" };
무슨 일이 일어나야하는지 오해하고 있습니다. 모듈에 정의 된 변수는 공유되지 않습니다. NodeJS는 범위를 지정합니다.
으로 반환해야합니다 module.exports
.
a.js
module.exports = "Hello World";
b.js
var test = require('./a.js');
console.log(test);
변수를 다른 파일로 내보내려는 경우 두 가지 패턴이 있습니다. 하나는 a.js
global.test = "Hello World";
// test는 전역 변수이지만 오염 될 것입니다.
다른 하나는
a.js module.exports.test = "Hello World";
또는 exports.test = "Hello World"입니다. b.js var test = require('./a.js');
// test in b.js can get the test in a.js console.log (test);
참고 URL : https://stackoverflow.com/questions/11726525/nodejs-require-file-js-issues
'Nice programing' 카테고리의 다른 글
yum을 사용하여 지정된 저장소에서 설치된 패키지를 나열하는 방법 (0) | 2020.11.24 |
---|---|
HTML 본문에 Schema Microdata 메타 태그를 넣습니까? (0) | 2020.11.24 |
ASP.NET MVC 3과 4의 차이점은 무엇입니까? (0) | 2020.11.24 |
Firebase 용 Cloud Functions-결제 계정이 구성되지 않음 (0) | 2020.11.24 |
Log4Net : RollingFileAppender에 롤링 날짜로 최대 백업 파일 설정 (0) | 2020.11.24 |