diff --git a/packages/compiler-core/__tests__/transform.spec.ts b/packages/compiler-core/__tests__/transform.spec.ts index f2660e64..baaddd78 100644 --- a/packages/compiler-core/__tests__/transform.spec.ts +++ b/packages/compiler-core/__tests__/transform.spec.ts @@ -30,7 +30,7 @@ describe('compiler: transform', () => { // across calls const calls: any[] = [] const plugin: NodeTransform = (node, context) => { - calls.push([node, Object.assign({}, context)]) + calls.push([node, { ...context }]) } transform(ast, { diff --git a/packages/compiler-sfc/src/compileStyle.ts b/packages/compiler-sfc/src/compileStyle.ts index 0780cf69..b61c46f3 100644 --- a/packages/compiler-sfc/src/compileStyle.ts +++ b/packages/compiler-sfc/src/compileStyle.ts @@ -132,14 +132,8 @@ function preprocess( options: StyleCompileOptions, preprocessor: StylePreprocessor ): StylePreprocessorResults { - return preprocessor.render( - options.source, - options.map, - Object.assign( - { - filename: options.filename - }, - options.preprocessOptions - ) - ) + return preprocessor.render(options.source, options.map, { + filename: options.filename, + ...options.preprocessOptions + }) } diff --git a/packages/compiler-sfc/src/stylePreprocessors.ts b/packages/compiler-sfc/src/stylePreprocessors.ts index 5e820ddf..e391c6b7 100644 --- a/packages/compiler-sfc/src/stylePreprocessors.ts +++ b/packages/compiler-sfc/src/stylePreprocessors.ts @@ -14,12 +14,13 @@ export interface StylePreprocessorResults { const scss: StylePreprocessor = { render(source, map, options) { const nodeSass = require('sass') - const finalOptions = Object.assign({}, options, { + const finalOptions = { + ...options, data: source, file: options.filename, outFile: options.filename, sourceMap: !!map - }) + } try { const result = nodeSass.renderSync(finalOptions) @@ -41,11 +42,10 @@ const scss: StylePreprocessor = { const sass: StylePreprocessor = { render(source, map, options) { - return scss.render( - source, - map, - Object.assign({}, options, { indentedSyntax: true }) - ) + return scss.render(source, map, { + ...options, + indentedSyntax: true + }) } } @@ -58,7 +58,7 @@ const less: StylePreprocessor = { let error: Error | null = null nodeLess.render( source, - Object.assign({}, options, { syncImport: true }), + { ...options, syncImport: true }, (err: Error | null, output: any) => { error = err result = output