[Nodejs] required is not defined 해결 방법
Tech/Node.js

[Nodejs] required is not defined 해결 방법

반응형


원인

Client side에서 node 문법을 사용해서 발생했던 문제였고 이곳에서 솔루션을 찾았습니다.

해결 방법

크게 3가지 방법이 제시되어 있는데 간단히 Browserify로 해결할 수 있었습니다.

Browserify는 require를 하는 모든 모듈을 하나의 코드로 합쳐주는 역할을 합니다.

 

우선, browserify를 설치하고

npm i -g browerify

 

원하는 파일을 browserify를 이용해 require 없이도 사용 가능한 파일로 만들어줍니다.

browserify {대상 파일} -o {저장 경로}

// ex) browserify src/test.js -o lib/bundle.js

새로운 문제

어쨌든 require 문제를 해결했는데, 모든 코드를 하나로 합쳤더니 무려 8800줄의 js 파일이 만들어졌습니다.

PR을 날리기 위해 최소 단위로 쪼개야 하는데 벌써 어질어질합니다.

어쩌면 <script> 태그를 활용하는 방법이 가독성 측면에서 더 나을수도 있겠다는 생각을 했습니다.


+ 21.09.27 추가

결국..

저는 vscode extension plugin을 제작중이었는데 위의 방법으로도 모든 에러가 해결되지 않아 command를 아예 새로 만들고 require가 가능한 main typescript를 동작시켰습니다.

이후에 vscode extension plugin 제작 포스팅을 올리긴 할텐데 간단하게 여기서 말하자면 

WebView + ts(require를 사용하는) 조합은 불가능하다로 결론지었습니다. 이렇게 결론내린 근거도 있지만 다음 포스팅때 자세히 적도록 하겠습니다😀

반응형

'Tech > Node.js' 카테고리의 다른 글

MAC Nodejs 12버전 설치하기  (0) 2021.11.15
[Nodejs] required is not defined 해결 방법  (0) 2021.09.24