ERROR Nuxt Build Error: [vite:vue] [@vue/compiler-sfc] Failed to resolve extends base type. nuxi 9:54:55 AM
If this previously worked in 3.2, you can instruct the compiler to ignore this extend by adding /* @vue-ignore */ before it, for example:
interface Props extends /* @vue-ignore */ Base {}
Note: both in 3.2 or with the ignore, the properties in the base type are treated as fallthrough attrs at runtime.
/home/user/projects/pro/app/node_modules/@nuxt/ui/dist/runtime/components/Button.vue
70 | const slots = defineSlots<ButtonSlots>()
71 |
72 | const linkProps = useForwardProps(pickLinkProps(props))
| ^^^^^^^^^^^
73 |
| ^
74 | const { orientation, size: buttonSize } = useButtonGroup<ButtonProps>(props)
| ^^^^^^^^^^^^^^^^^^^^
file: /home/user/projects/pro/app/node_modules/@nuxt/ui/dist/runtime/components/Button.vue ERROR Nuxt Build Error: [vite:vue] [@vue/compiler-sfc] Failed to resolve extends base type. nuxi 9:54:55 AM
If this previously worked in 3.2, you can instruct the compiler to ignore this extend by adding /* @vue-ignore */ before it, for example:
interface Props extends /* @vue-ignore */ Base {}
Note: both in 3.2 or with the ignore, the properties in the base type are treated as fallthrough attrs at runtime.
/home/user/projects/pro/app/node_modules/@nuxt/ui/dist/runtime/components/Button.vue
70 | const slots = defineSlots<ButtonSlots>()
71 |
72 | const linkProps = useForwardProps(pickLinkProps(props))
| ^^^^^^^^^^^
73 |
| ^
74 | const { orientation, size: buttonSize } = useButtonGroup<ButtonProps>(props)
| ^^^^^^^^^^^^^^^^^^^^
file: /home/user/projects/pro/app/node_modules/@nuxt/ui/dist/runtime/components/Button.vue<UAlert title="Heads up!" /><UAlert title="Heads up!" /> from the code below, the app builds correctly:<template>
<div>
<UAlert title="Heads up!" />
</div>
</template><template>
<div>
<UAlert title="Heads up!" />
</div>
</template>{
"name": "@app/nuxt-layer",
"type": "module",
"version": "0.0.1",
"main": "./nuxt.config.ts",
"scripts": {
"build": "nuxt build",
"clean": "rm -rf node_modules .nuxt .turbo coverage .output dist .playground",
"generate": "nuxt generate",
"lint": "eslint .",
"lint:fix": "bun run lint --fix",
"prepare": "nuxt prepare",
"preview": "nuxt preview",
"todo:dev": "nuxi dev",
"todo:typecheck": "nuxi typeckeck"
},
"devDependencies": {
"@iconify-json/lucide": "^1.2.38",
"@nuxt/eslint": "^1.3.0",
"@nuxt/ui": "^3.0.2",
"@sidebase/nuxt-auth": "0.9.4",
"@vueuse/core": "^13.1.0",
"@vueuse/nuxt": "^13.1.0",
"nuxt": "^3.16.2",
}
}{
"name": "@app/nuxt-layer",
"type": "module",
"version": "0.0.1",
"main": "./nuxt.config.ts",
"scripts": {
"build": "nuxt build",
"clean": "rm -rf node_modules .nuxt .turbo coverage .output dist .playground",
"generate": "nuxt generate",
"lint": "eslint .",
"lint:fix": "bun run lint --fix",
"prepare": "nuxt prepare",
"preview": "nuxt preview",
"todo:dev": "nuxi dev",
"todo:typecheck": "nuxi typeckeck"
},
"devDependencies": {
"@iconify-json/lucide": "^1.2.38",
"@nuxt/eslint": "^1.3.0",
"@nuxt/ui": "^3.0.2",
"@sidebase/nuxt-auth": "0.9.4",
"@vueuse/core": "^13.1.0",
"@vueuse/nuxt": "^13.1.0",
"nuxt": "^3.16.2",
}
}