From: daiwei Date: Wed, 19 Feb 2025 00:40:59 +0000 (+0800) Subject: fix(compiler-sfc): properly rewrite universal selector scope X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=34d02995ed2ed786610499eed467b12c19ac44b7;p=thirdparty%2Fvuejs%2Fcore.git fix(compiler-sfc): properly rewrite universal selector scope --- diff --git a/packages/compiler-sfc/__tests__/compileStyle.spec.ts b/packages/compiler-sfc/__tests__/compileStyle.spec.ts index b76414364d..8a1ea77ee7 100644 --- a/packages/compiler-sfc/__tests__/compileStyle.spec.ts +++ b/packages/compiler-sfc/__tests__/compileStyle.spec.ts @@ -489,7 +489,7 @@ describe('SFC style preprocessors', () => { }" `) expect(compileScoped(`.foo * { color: red; }`)).toMatchInlineSnapshot(` - ".foo[data-v-test] * { color: red; + ".foo *[data-v-test] { color: red; }" `) }) diff --git a/packages/compiler-sfc/src/style/pluginScoped.ts b/packages/compiler-sfc/src/style/pluginScoped.ts index d0aaddd767..5573289f16 100644 --- a/packages/compiler-sfc/src/style/pluginScoped.ts +++ b/packages/compiler-sfc/src/style/pluginScoped.ts @@ -216,8 +216,12 @@ function rewriteSelector( return false } } - // .foo * -> .foo[xxxxxxx] * - if (node) return + // .foo * -> .foo *[xxxxxxx] + if (node) { + node = n + shouldInject = true + return + } } if (