diff --git a/packages/compiler-vapor/src/transform.ts b/packages/compiler-vapor/src/transform.ts index 69b3573ac..77f96668f 100644 --- a/packages/compiler-vapor/src/transform.ts +++ b/packages/compiler-vapor/src/transform.ts @@ -388,12 +388,11 @@ function processDynamicChildren(ctx: TransformContext) { } export function createStructuralDirectiveTransform( - name: string | RegExp, + name: string | string[], fn: StructuralDirectiveTransform, ): NodeTransform { - const matches = isString(name) - ? (n: string) => n === name - : (n: string) => name.test(n) + const matches = (n: string) => + isString(name) ? n === name : name.includes(n) return (node, context) => { if (node.type === NodeTypes.ELEMENT) { diff --git a/packages/compiler-vapor/src/transforms/vIf.ts b/packages/compiler-vapor/src/transforms/vIf.ts index d3f47fb37..f89727556 100644 --- a/packages/compiler-vapor/src/transforms/vIf.ts +++ b/packages/compiler-vapor/src/transforms/vIf.ts @@ -20,7 +20,7 @@ import { import { extend } from '@vue/shared' export const transformVIf = createStructuralDirectiveTransform( - /^(if|else|else-if)$/, + ['if', 'else', 'else-if'], processIf, )