본문 바로가기

Back-End/Node.js

Node.js.45.App 제작 - 모듈의 활용

반응형

코드가 너무 기므로 외부 파일에 독립적으로 사용할만한 코드를 찾아보자.

 

목표

var template을 상부 코드처럼 바깥에서 모듈을 가져다 써보자!

 


lib 폴더를 생성한다. 보통, 모듈을 모아 놓는 폴더를 library라는 뜻의 lib 문자로 많이 생성한다.

그리고 그 속에 template.js 파일을 생성하자.

lib > template.js

// var template = {
module.exports = {
  html: function (title, list, control, body) {
    var template = `
    <!doctype html>
    <html>
    <head>
      <title>WEB1 - ${title}</title>
      <meta charset="utf-8">
    </head>
    <body>
      <h1><a href="/">WEB</a></h1>
      ${list}
      ${control}
      ${body}
    </body>
    </html>
    `;
    return template;
  },
  list: function(filelist){
    var list = '<ul>';
    var i = 0;
    while(i < filelist.length) {
      list = list + `<li><a href="/?id=${filelist[i]}">${filelist[i]}</a></li>`;
      i++;
    }
    list = list + '</ul>';
    return list;
  }
}

// module.exports = template;

main.js

var template = require('./lib/template.js');

코드를 변경한 후에도 웹 사이트가 잘 동작하는 것을 보아, Refactoring을 성공했다!

 

 

 

반응형