๋
ธ๋์ด๋ฏ๋ก gatsby-node.js
๋ commonjs๋ฅผ ์ฌ์ฉํ๊ณ ๊ตฌ์ฑ ์์๋ ES6 ๋ชจ๋์ ์ฌ์ฉํฉ๋๋ค.
์์ฑ ๋ ํ์ด์ง์ ์ฌ๋ฌ๊ทธ๋ฅผ ๊ณ์ฐํ๋ ํจ์๋ฅผ ๊ณต์ ํ๊ณ ์ถ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค.
/* export ? */ function getSlug(post) {
return `/posts/${post.data}${post.title.toLowerCase()}`
}
/* module.exports = { getSlug }; ? */
์ด์ ์ด ํจ์๋ฅผ
gatsby-node.js
์์ createPage
API์์ ์ฌ์ฉPosts.js
์์ ๊ฐ๋ณ ๊ฒ์๋ฌผ ๊ฒฝ๋ก์ ์ฐ๊ฒฐํฉ๋๋ค.์ด ๊ฒฝ์ฐ ์ฝ๋๋ฅผ ๊ณต์ ํ๊ณ ๋ค๋ฅธ ๋ชจ๋ ์์คํ ์ ๋ค๋ฃจ๋ ๊ฒ์ ์ด๋ป๊ฒ ๊ถ์ฅํฉ๋๊น?
๋ด ๊ฒฝํ์ Node API๋ฅผ ์ฌ์ฉํ์ง ์๋ ํ ํ์์ฒ๋ผ ๋ธ๋ผ์ฐ์ ์ฝ๋์์ ๋ ธ๋ ๋ชจ๋์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค. ๋ฌธ์ ๊ฐ ์์ต๋๊น?
// shared.js
function getSlug(post) {
return `/posts/${post.data}${post.title.toLowerCase()}`
}
module.exports = { getSlug }
// Posts.js
import { getSlug } from './path/to/shared.js'
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋ด ๊ฒฝํ์ Node API๋ฅผ ์ฌ์ฉํ์ง ์๋ ํ ํ์์ฒ๋ผ ๋ธ๋ผ์ฐ์ ์ฝ๋์์ ๋ ธ๋ ๋ชจ๋์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค. ๋ฌธ์ ๊ฐ ์์ต๋๊น?