Я делаю JS, который я хочу опубликовать.Он будет использоваться как в сети, так и на узле.Я прочитал документ Webpack и использую этот следующий конфиг.Связанный и минимизированный, он производит пакет 20 КБ, который, IMHO, довольно большой для того, что он делает.Должен ли я связать его с веб-пакетом таким образом?
{
mode: 'production',
entry: {
mylib: './src/mylib_browser.ts', // same for node
"mylib.min": './src/mylib_browser.ts'
},
watch: true,
target: 'web', // node for node
devtool: 'source-map',
externals: [nodeExternals()],
module: {
rules: [
{
test: /\.tsx?$/,
use: 'ts-loader',
exclude: /node_modules/
}
]
},
resolve: {
extensions: ['.tsx', '.ts', '.js']
},
output: {
path: path.resolve(__dirname, 'dist'),
filename: '[name]_browser.js',
libraryTarget: 'umd',
library: 'MyLib',
umdNamedDefine: true
},
plugins: [
new UglifyJsPlugin({
sourceMap: true,
include: /\.min\.js$/,
})
],
};
И у меня такая же конфигурация для узла.
Это правильная конфигурация для этого?Как я могу уменьшить размер?Кроме того, когда я смотрю на другой пакет npm, многие из них - просто vanilla js.Должен ли я просто позволить пользователю моего пакета npm упаковать его как обычную зависимость?