2.6.10
https://github.com/tbutcaru/v-issue-multiple-dynamic-slot-names
npm install
npm run serve
Varios nombres de ranuras dinámicas deberían funcionar como se esperaba.
Se produce el siguiente error:
Invalid dynamic argument expression: attribute names cannot contain spaces, quotes, <, >, / or =.#[headerslot]>Header slot</template>
Default slot
<template #[footerslot]
Si uno de los nombres de las ranuras dinámicas se hace estático (no importa cuál), la aplicación está funcionando.
node_modules/vue-template-compiler/build.js
attrs.forEach(function (attr) {
) agregó la siguiente advertencia:warn$1('--------------->> ' + attr.name);
#[headerslot]
#[headerslot]>Header slot</template>
Default slot
<template #[footerslot]
Entonces, parece que el compilador no sabe cómo extraer solo el atributo cuando hay varios nombres de ranuras dinámicas.
La taquigrafía solo está disponible cuando se proporciona un argumento. Tratar de usar:
<template v-slot:[dynamicSlotName]>
...
</template>
La taquigrafía solo está disponible cuando se proporciona un argumento. Tratar de usar:
<template v-slot:[dynamicSlotName]> ... </template>
Lo intenté antes de crear el problema y el resultado es el mismo 😞
¡Hola a todos!
¿Qué hay de nuevo en esto? Todavía tengo el problema en 2.6.11 reproducir aquí
Después de muchos intentos, encontré una manera de hacer que funcionen las tragamonedas dinámicas múltiples. Cuando agrego claves al elemento raíz de las plantillas de tragamonedas dinámicas, funciona:
esto no funciona: reproduce aquí
<template #[slot1]>
<p>slot test</p>
</template>
<template #[slot2]>
<p>slot test2</p>
</template>
// got "Invalid dynamic argument expression: attribute names cannot contain spaces, quotes, <, >, / or ="
este trabajo: reproducir aquí
<template #[slot1]>
<p key="1">slot test</p>
</template>
<template #[slot2]>
<p key="2">slot test2</p>
</template>
// work fine
¿Por qué necesito agregar claves para que funcione? Me perdí algo.
La solución de @ davis90 funcionó para mí. No entiendo por qué funciona también.
¿Por qué los errores son tan engañosos en vue. Gracias aunque tu solución funcionó
Comentario más útil
Después de muchos intentos, encontré una manera de hacer que funcionen las tragamonedas dinámicas múltiples. Cuando agrego claves al elemento raíz de las plantillas de tragamonedas dinámicas, funciona:
esto no funciona: reproduce aquí
este trabajo: reproducir aquí
¿Por qué necesito agregar claves para que funcione? Me perdí algo.