moduleProject
CommonJs
exports, requireํค์๋๋ฅผ ์ฌ์ฉํ ๋ฐฉ์
const fun1 = require('example');example ์ด๋ผ๋ ๋ชจ๋(๋ผ์ด๋ธ๋ฌ๋ฆฌ)๋ฅผ require์ด๋ผ๋ ํค์๋๋ฅผ ํตํด ๋ถ๋ฌ์ ๋ณ์์ ํ ๋นํ๋ ๋ฐฉ์์ด๋ค.
const div = 2;
const func1 = function (num2) {
return num2 / div;
};
exports.func1 = func1;
module.exports = func1;exportsํค์๋๋ฅผ ํตํด ์ฌ๋ฌ๊ฐ์ ๊ฐ์ฒด๋ค์ ๋ด๋ณด๋ผ ์๋ ์๊ณ module.exportsํค์๋๋ฅผ ํตํด ํ๊ฐ์ ๊ฐ์ฒด๋ง ๋ณด๋ผ ์๋ ์๋ค.
CommonJs๋ ๋ชจ๋ ํ์ผ์ด ๋์คํฌ์ ์๋ ์ํฉ์ ์ ์ ๋ก ํ๋ค. (์๋ฒ ์ฌ์ด๋) ๋๋ฌธ์, ํ๊ฐ์ Jsํ์ผ์ ๋ด๋ ค๋ฐ๋๋ฐ ๊ทธ ํ์ผ์ ์ถ๊ฐ๋์ด์๋ ์์กด์ฑ ํ์ผ๋ค(๋ชจ๋)์ ๋ชจ๋ ์๋ฒ์ฌ์ด๋์์ ๋ค์ด๋ฐ์ ์ฒ๋ฆฌํ ํ์ ์๋ต์ ์ฃผ๊ธฐ ๋๋ฌธ์ block๋๋ค๋ ๋ฌธ์ ๊ฐ ์๋ค.
์ด๋ ๋์ ์ผ๋ก script ํ๊ทธ๋ฅผ ์ฝ์
ํ๋ ๋ฐฉ๋ฒ์ผ๋ก ๊ทน๋ณต์ ํ๋ ค๊ณ ํ๋ค๊ณ ํ๋ค. (๋ธ๋ผ์ฐ์ ๊ฐ ํน์ Js๋ฅผ ๋ก๋ฉํ๋ ๋์ block์ด ๋๊ธฐ ๋๋ฌธ์ ์ด๋ฅผ ๋ง๊ณ ์ jsํ์ผ๋ด์์ scriptํ๊ทธ๋ฅผ ๋ง๋ค๊ณ ๋์ค์ ํน์ ํ๊ทธ์ ๋ถ์ด๋ ๋ฐฉ๋ฒ)
์๋ฒ์ ๋ชจ๋์ ๋น๋๊ธฐ์ ์ผ๋ก ์ ๋ฌํ๊ธฐ ์ํด์๋ require.define({},[])์ ํฌ๋งท์ผ๋ก ๊ฐ์ธ ์ ์กํ๋ฉด ๋ธ๋ผ์ฐ์ ๋ ๋น๋๊ธฐ์ ์ผ๋ก ๋ก๋ํ ์ ์๋ค.
AMD
import - fromํค์๋๋ฅผ ์ด์ฉํ์ฌ ๋ชจ๋์ ๋ก๋ํ๋ ๋ฐฉ์์ผ๋ก CommonJs์ ๋นํด ๋ช
์์ ์ด๋ค.
๋น๋๊ธฐํ๊ฒฝ๊ณผ ์๋ฒ์ฌ์ด๋์์ ์ ๋์ํ๊ณ define() ํจ์๋ฅผ ์ด์ฉํด ๋ชจ๋์ ๊ตฌ์ฑํด ์ ์ญ๋ณ์์ ๋ฌธ์ ๊ฐ ์๋ค.
๋ณดํต ํธ๋ฆฌ ์์ดํน์ ์ํด ํ๋ก ํธ์์๋ AMD๋ช
์ธ๋ฅผ ์ฌ์ฉํ๋ค.
Reference
https://d2.naver.com/helloworld/12864
Last updated