mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
Add default entries to main.js (#1343)
So, we don't need to add them to individual pages. This also fix the issue where, error pages doesn't ping the server.
This commit is contained in:
parent
62fcb2b664
commit
ef2bbfee5a
|
@ -28,15 +28,22 @@ const relativeResolve = rootModuleRelativePath(require)
|
||||||
export default async function createCompiler (dir, { dev = false, quiet = false, buildDir } = {}) {
|
export default async function createCompiler (dir, { dev = false, quiet = false, buildDir } = {}) {
|
||||||
dir = resolve(dir)
|
dir = resolve(dir)
|
||||||
const config = getConfig(dir)
|
const config = getConfig(dir)
|
||||||
const defaultEntries = dev
|
const defaultEntries = dev ? [
|
||||||
? [join(__dirname, '..', '..', 'client/webpack-hot-middleware-client')] : []
|
join(__dirname, '..', '..', 'client', 'webpack-hot-middleware-client'),
|
||||||
|
join(__dirname, '..', '..', 'client', 'on-demand-entries-client')
|
||||||
|
] : []
|
||||||
const mainJS = dev
|
const mainJS = dev
|
||||||
? require.resolve('../../client/next-dev') : require.resolve('../../client/next')
|
? require.resolve('../../client/next-dev') : require.resolve('../../client/next')
|
||||||
|
|
||||||
let minChunks
|
let minChunks
|
||||||
|
|
||||||
const entry = async () => {
|
const entry = async () => {
|
||||||
const entries = { 'main.js': mainJS }
|
const entries = {
|
||||||
|
'main.js': [
|
||||||
|
...defaultEntries,
|
||||||
|
mainJS
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
const pages = await glob('pages/**/*.js', { cwd: dir })
|
const pages = await glob('pages/**/*.js', { cwd: dir })
|
||||||
const devPages = pages.filter((p) => p === 'pages/_document.js' || p === 'pages/_error.js')
|
const devPages = pages.filter((p) => p === 'pages/_document.js' || p === 'pages/_error.js')
|
||||||
|
@ -45,11 +52,11 @@ export default async function createCompiler (dir, { dev = false, quiet = false,
|
||||||
// managing pages.
|
// managing pages.
|
||||||
if (dev) {
|
if (dev) {
|
||||||
for (const p of devPages) {
|
for (const p of devPages) {
|
||||||
entries[join('bundles', p)] = [...defaultEntries, `./${p}?entry`]
|
entries[join('bundles', p)] = `./${p}?entry`
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (const p of pages) {
|
for (const p of pages) {
|
||||||
entries[join('bundles', p)] = [...defaultEntries, `./${p}?entry`]
|
entries[join('bundles', p)] = `./${p}?entry`
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -71,11 +71,7 @@ export default function onDemandEntryHandler (devMiddleware, compiler, {
|
||||||
const pathname = await resolvePath(pagePath)
|
const pathname = await resolvePath(pagePath)
|
||||||
const name = join('bundles', pathname.substring(dir.length))
|
const name = join('bundles', pathname.substring(dir.length))
|
||||||
|
|
||||||
const entry = [
|
const entry = `${pathname}?entry`
|
||||||
join(__dirname, '..', 'client/webpack-hot-middleware-client'),
|
|
||||||
join(__dirname, '..', 'client', 'on-demand-entries-client'),
|
|
||||||
`${pathname}?entry`
|
|
||||||
]
|
|
||||||
|
|
||||||
await new Promise((resolve, reject) => {
|
await new Promise((resolve, reject) => {
|
||||||
const entryInfo = entries[page]
|
const entryInfo = entries[page]
|
||||||
|
|
Loading…
Reference in a new issue