From 0c1c0b7c947c69059ba96f75adc713b83947bffc Mon Sep 17 00:00:00 2001 From: fxy060608 Date: Thu, 30 Dec 2021 16:30:34 +0800 Subject: [PATCH] fix: support additionalData (#3135) --- packages/vite-plugin-uni/src/config/css.ts | 13 ++++++++----- packages/vite-plugin-uni/src/config/index.ts | 2 +- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/vite-plugin-uni/src/config/css.ts b/packages/vite-plugin-uni/src/config/css.ts index e6ca5eefb..ba7f5dca6 100644 --- a/packages/vite-plugin-uni/src/config/css.ts +++ b/packages/vite-plugin-uni/src/config/css.ts @@ -3,12 +3,14 @@ import fs from 'fs-extra' import { UserConfig } from 'vite' import { VitePluginUniResolvedOptions } from '..' -function resolveAdditionalData(inputDir: string) { +function resolveAdditionalData(inputDir: string, config: UserConfig) { const uniScssFile = path.resolve(inputDir, 'uni.scss') + const userAdditionalData = + config.css?.preprocessorOptions?.scss?.additionalData || '' if (!fs.existsSync(uniScssFile)) { - return '' + return userAdditionalData } - return fs.readFileSync(uniScssFile, 'utf8') + return fs.readFileSync(uniScssFile, 'utf8') + '\n' + userAdditionalData } function resolvePostcssConfig(inputDir: string) { @@ -19,14 +21,15 @@ function resolvePostcssConfig(inputDir: string) { } export function createCss( - options: VitePluginUniResolvedOptions + options: VitePluginUniResolvedOptions, + config: UserConfig ): UserConfig['css'] { return { postcss: resolvePostcssConfig(options.inputDir), preprocessorOptions: { scss: { charset: false, - additionalData: resolveAdditionalData(options.inputDir), + additionalData: resolveAdditionalData(options.inputDir, config), }, }, } diff --git a/packages/vite-plugin-uni/src/config/index.ts b/packages/vite-plugin-uni/src/config/index.ts index 5ca62a2f5..62c1a6acf 100644 --- a/packages/vite-plugin-uni/src/config/index.ts +++ b/packages/vite-plugin-uni/src/config/index.ts @@ -39,7 +39,7 @@ export function createConfig( logLevel: config.logLevel || 'warn', optimizeDeps: createOptimizeDeps(options), build: createBuild(options, config), - css: createCss(options), + css: createCss(options, config), } } } -- GitLab