Electron

require()

vamosdev12 2025. 3. 6. 12:07

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 모듈 가져오기