Skip to content

Commit 9377352

Browse files
authored
feat(compiler-sfc): support additionalData option in compileStyle when processing sass (#1952)
1 parent 890ca8a commit 9377352

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

packages/compiler-sfc/__tests__/compileStyle.spec.ts

+22
Original file line numberDiff line numberDiff line change
@@ -336,4 +336,26 @@ describe('SFC style preprocessors', () => {
336336
path.join(__dirname, './fixture/import.scss')
337337
])
338338
})
339+
340+
test('scss respect user-defined options.additionalData', () => {
341+
const res = compileStyle({
342+
preprocessOptions: {
343+
additionalData: `
344+
@mixin square($size) {
345+
width: $size;
346+
height: $size;
347+
}`
348+
},
349+
source: `
350+
.square {
351+
@include square(100px);
352+
}
353+
`,
354+
filename: path.resolve(__dirname, './fixture/test.scss'),
355+
id: '',
356+
preprocessLang: 'scss'
357+
})
358+
359+
expect(res.errors.length).toBe(0)
360+
})
339361
})

packages/compiler-sfc/src/stylePreprocessors.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ const scss: StylePreprocessor = (source, map, options, load = require) => {
2424
const nodeSass = load('sass')
2525
const finalOptions = {
2626
...options,
27-
data: source,
27+
data: (options.additionalData || '') + source,
2828
file: options.filename,
2929
outFile: options.filename,
3030
sourceMap: !!map

0 commit comments

Comments
 (0)