vue-cli build lib SSR - проблема с CSS
Я использую vue-cli 3 для создания библиотеки для npm. Кажется, что все в порядке, за исключением того, что когда CSS включает JavaScript, библиотека не работает при рендеринге на стороне сервера, как Nuxt. Он продолжает говорить, что документ не определен по уважительной причине.
Итак, мой вопрос, как подготовить его к SSR с использованием встроенного CSS?
Я сейчас пользуюсь
vue-cli-service build --target lib --name myLibName *.js
Также мой Vue файл конфигурации
module.exports = {
css: {
extract: false,
},
configureWebpack: {
output: {
libraryTarget: 'umd',
},
},
};
Я пытался использовать libraryExport: default, как сказано в документах vue-cli, но безуспешно.
Наконец, да, если я извлекаю CSS в файл, все работает с SSR, как и ожидалось.
0 ответов
По-видимому, нет возможности создать CSS с поддержкой SSR. Я также понял, что это не идеально. Большинство больших библиотек используют отдельный CSS.
Мое последнее решение - просто настроить vue-cli-service для создания кода в виде библиотеки, подобной этой.
vue-cli-service build --target lib --name myLibName *.js
И не нужно ничего менять в файле конфигурации. Все это делается из коробки, если только не хочется чего-то особенного.
Ура.