Я использую vue-cli lib mode + webpack для создания пакета NPM.Я стремлюсь создать плагин vue.js для SSR и использования Клиента.Приложение экспортирует 4 пакета следующим образом
myPackage.common.js
myPackage.umd.jd
myPackage-ssr.common.js
myPackage-ssr.umd.js
Если я не включу хотя бы обычный + ssr, плагин не будет работать должным образом.Либо работают только на стороне сервера или на стороне клиента.Когда я добавляю оба файла, это работает для обоих сценариев.Я не уверен, почему мне нужно 2 файла.
Я планирую иметь только один файл для SSR и клиента со встроенным CSS.
Моя конфигурация веб-пакета здесь
module.exports = {
css: {
extract: false,
},
configureWebpack: {
target: TARGET_NODE ? 'node' : 'web',
node: TARGET_NODE ? undefined : false,
output: {
library: 'myPackage',
libraryExport: 'default',
libraryTarget: TARGET_NODE ? 'umd' : undefined,
},
},
chainWebpack: (config) => {
config.module
.rule('vue')
.use('vue-loader')
.tap(options => Object.assign(options, { optimizeSSR: false }));
},
};
и мой скрипт package.json
"build": "npm run build:server -- --silent && npm run build:client -- --no-clean --silent",
"build:client": "vue-cli-service build --target lib --name myPackage ./src/components/index.js",
"build:server": "cross-env WEBPACK_TARGET=node vue-cli-service build --target lib --name myPackage-ssr ./src/components/index.js",
Что мне не хватает?Приветствия