From 280d30d5e1b97c12c0c3ab3fd6833d1cd64d26d9 Mon Sep 17 00:00:00 2001 From: Oumar Barry Date: Tue, 5 Mar 2024 10:32:40 +0000 Subject: [PATCH] fix(schema): disable `typescript.shim` in favour of volar (#26052) --- docs/1.getting-started/2.installation.md | 13 +------------ nuxt.config.ts | 1 + packages/schema/src/config/typescript.ts | 6 +++--- 3 files changed, 5 insertions(+), 15 deletions(-) diff --git a/docs/1.getting-started/2.installation.md b/docs/1.getting-started/2.installation.md index f7a4d317ac..f89438e8f2 100644 --- a/docs/1.getting-started/2.installation.md +++ b/docs/1.getting-started/2.installation.md @@ -22,7 +22,7 @@ Start with one of our starters and themes directly by opening [nuxt.new](https:/ #### Prerequisites - **Node.js** - [`v18.0.0`](https://nodejs.org/en) or newer -- **Text editor** - We recommend [Visual Studio Code](https://code.visualstudio.com/) with the [Volar Extension](https://marketplace.visualstudio.com/items?itemName=Vue.volar) +- **Text editor** - We recommend [Visual Studio Code](https://code.visualstudio.com/) with the [official Vue extension](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (previously known as Volar) - **Terminal** - In order to run Nuxt commands ::note @@ -30,17 +30,6 @@ Start with one of our starters and themes directly by opening [nuxt.new](https:/ :summary[Additional notes for an optimal setup:] - **Node.js**: Make sure to use an even numbered version (18, 20, etc) - **Nuxtr**: Install the community-developed [Nuxtr extension](https://marketplace.visualstudio.com/items?itemName=Nuxtr.nuxtr-vscode) - - **Volar**: Either enable [**Take Over Mode**](https://vuejs.org/guide/typescript/overview.html#volar-takeover-mode) (recommended) or add the [TypeScript Vue Plugin](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) - - If you have enabled **Take Over Mode** or installed the **TypeScript Vue Plugin (Volar)**, you can disable generating the shim for `*.vue` files in your [`nuxt.config.ts`](/docs/guide/directory-structure/nuxt-config) file: - - ```ts twoslash [nuxt.config.ts] - export default defineNuxtConfig({ - typescript: { - shim: false - } - }) - ``` :: :: diff --git a/nuxt.config.ts b/nuxt.config.ts index 3bcf682df1..447512fab7 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -3,6 +3,7 @@ import { addPluginTemplate } from 'nuxt/kit' export default defineNuxtConfig({ + typescript: { shim: process.env.DOCS_TYPECHECK === 'true' }, pages: process.env.DOCS_TYPECHECK === 'true', modules: [ function () { diff --git a/packages/schema/src/config/typescript.ts b/packages/schema/src/config/typescript.ts index 69e13d5094..6cef2858b9 100644 --- a/packages/schema/src/config/typescript.ts +++ b/packages/schema/src/config/typescript.ts @@ -50,9 +50,9 @@ export default defineUntypedSchema({ /** * Generate a `*.vue` shim. * - * We recommend instead either enabling [**Take Over Mode**](https://vuejs.org/guide/typescript/overview.html#volar-takeover-mode) or adding - * TypeScript Vue Plugin (Volar)** 👉 [[Download](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin)]. + * We recommend instead letting the [official Vue extension](https://marketplace.visualstudio.com/items?itemName=Vue.volar) + * generate accurate types for your components. */ - shim: true + shim: false } })