Делаю примерно так:
entry: {
admin: {
publicPath: '/admin',
import: './src/admin.tsx',
},
main: {
publicPath: '/',
import: './src/index.tsx',
},
},
output: {
filename: '[name].[contenthash].js',
chunkFilename: '[id].[chunkhash].js',
path: path.resolve('.', 'dist'),
globalObject: 'self',
},
plugins: [
new HtmlWebpackPlugin({
template: './src/template.html',
filename: 'index.html',
chunks: ['main'],
inject: true,
hash: false,
publicPath: '/',
}),
new HtmlWebpackPlugin({
template: './src/template.html',
filename: 'admin.html',
chunks: ['admin'],
inject: true,
hash: false,
async: true,
publicPath: '/admin',
}),
],
devServer: {
hot: true,
port: 8443,
host: '0.0.0.0',
https: true,
allowedHosts: 'all',
historyApiFallback: true,
headers: {
'Access-Control-Allow-Origin': '*',
}
Не получается завести всё это в дев сервере: вне зависимости от урла отдаёт основной бандл. Что я не так делаю? Или так вообще нельзя, и для админки придётся писать отдельный конфиг и поднимать ещё один дев сервер?
// в @webpack_ru забанили, хотя я даже не успел ничего там написать.
а зачем держать все в одном руте? монорепа, два отдельных приложения, N пакетов с общим кодом
Ну в продакшне это всё легко складывается в один нжинкс
продакшен это дело десятое вообще
Обсуждают сегодня