// in next.config.js
module.exports = {
entry: "./entry",
};
// or
module.exports = {
entry: {
client: "./entry/client",
server: "./entry/server",
},
};
ํ์ฌ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ถ๊ฐ import "../entry/server.js";
์ pages/_document.js
์์ ์๋์ ์ฝ๋๋ฅผ ์ถ๊ฐ next.config.js
.
module.exports = {
webpack: (config) => {
const entryFactory = config.entry;
config.entry = () => (
entryFactory()
.then((entry) => {
entry["main.js"] = [
"./entry/client.js",
...entry["main.js"],
];
return entry;
})
);
return config;
},
};
์์ ์ฝ๋๋ ์ค์ฒฉ๋ entry
๋ฐฐ์ด์ ๋ง๋ญ๋๋ค. ๊ทธ๊ฒ์ด ํ์ํ ๊ฒ์
๋๊น, ์๋๋ฉด ํ์ฐ์ด ์์ด์ผ ํ๋ ๊ฒ์
๋๊น?
module.exports = {
webpack: (config) => {
const entryFactory = config.entry;
config.entry = () => (
entryFactory()
.then((entry) => {
entry["main.js"] = [
"./entry/client.js",
...entry["main.js"], // <-- Flatten the array?
];
return entry;
})
);
return config;
},
};
๋ค @jcheroske ๊ทํ์ ์ ์์ด ๋ง์ต๋๋ค.
์๋ณธ ์ฝ๋๋ฅผ ์
๋ฐ์ดํธํ๊ฒ ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด ๋ฌธ์ ๋ฅผ ๋ซ์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
ํ์ฌ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ถ๊ฐ
import "../entry/server.js";
์pages/_document.js
์์ ์๋์ ์ฝ๋๋ฅผ ์ถ๊ฐnext.config.js
.