vue.js - Parsningsfel: Ov väntat token 'as'. Hur kan jag använda TypeScript och specificera typer inuti template-taggar


Jag använder pug inom min Vue <template>, det är ett syntaxfel för mig i konsolen:

temp.vue:

<template lang="pug">
p {{ directions[directionName as keyof typeof directions] }}
</template>

<script lang="ts">
export default defineComponent({
  props: ["directionName"],
  setup() {
    enum directions {
      Left = "L",
      Right = "R",
      Up = "U",
      Down = "D",
    }

    return {
      directions
    }
  }
})
</script>

fel :

vue-router.esm-bundler.js:3325 SyntaxError: Unexpected identifier 'as' (at ...)

Beroenden:

  • vite: ^3.1.8
  • vue: ^3.2.25
  • pug: ^3.0.2
  • @volar/vue-language-plugin-pug: ^1.0.9
  • typescript: ~4.5.5
  • vite-plugin-pug: ^0.3.1
  • vue-tsc: ^1.0.9

hur kan jag typomvandla inuti <template>-taggarna?