1. require()
- Node.js 환경에서 모듈을 가져오는 CommonJS 방식
- Node.js 환경에서는 require()를 사용하여 파일이나 패키지를 가져올 수 있음
const fs = require("fs"); // Node.js의 파일 시스템 모듈 불러오기
const express = require("express"); // npm 패키지 가져오기
const app = express();
// require("express")는 node_modules에서 express 패키지를 찾아서 가져옴
2. require vs import (ES Module)
1) CommonJS (require)
- Node.js에서 사용되는 모듈 시스템
- module.exports와 함께 사용
- 비동기 import()와 다르게 동기 방식 (파일을 즉시 로드)
const myModule = require("./myModule"); // 다른 파일에서 가져오기
console.log(myModule.someFunction());
2) ES6 import (ES Module)
- 모던 JavaScript (React, Webpack, Babel 등)에서 사용
- export와 함께 사용
- 비동기적으로 동작 가능 (dynamic import 지원)
import myModule from "./myModule.js"; // ES 모듈 가져오기
console.log(myModule.someFunction());
3. Electron에서 require를 사용할 때 (window.require)
- Electron에서는 렌더러 프로세스(프론트엔드)와 메인 프로세스(Node.js 백엔드)가 따로 동작함.
- 렌더러(React, HTML)에서 require()를 직접 사용할 수 없기 때문에 window.require를 사용해야 하는 경우가 있음.
- 하지만 최신 Electron에서는 require 대신 preload.js와 contextBridge를 활용하는 방식이 권장됨!
const electron = window.require("electron"); // Electron 모듈 가져오기
'Electron' 카테고리의 다른 글
보안과 안정적 통신을 위해 preload.js 스크립트 설정하기 (0) | 2025.04.24 |
---|---|
Electron 이벤트 리스너 - .on() / .once() (0) | 2025.04.22 |
일렉트론 구조 - main.js / index.js / on() / send() (0) | 2025.03.18 |
audio 태그 대신 Audio 객체로 조작하기 (0) | 2025.03.06 |
ReturnType<T> (0) | 2025.03.06 |