功能
Nuxt 的一些特性是可选的,或者可以根据您的需求禁用。
特性
devLogs
在开发过程中将服务器日志流式传输到客户端。这些日志可以在 dev:ssr-logs
钩子中处理。
默认情况下,在开发模式(测试模式未激活时)下启用此功能。
如果设置为 silent
,日志将不会打印到浏览器控制台。
export default defineNuxtConfig({
features: {
devLogs: true,
},
})
inlineStyles
在渲染 HTML 时内联样式。目前仅在使用 Vite 时可用。
您还可以传入一个函数,该函数接收 Vue 组件的路径并返回一个布尔值,指示是否内联该组件的样式。
它默认为 (id) => id.includes('.vue')
。
export default defineNuxtConfig({
features: {
inlineStyles: false, // or a function to determine inlining
},
})
noScripts
关闭 Nuxt 脚本和 JavaScript 资源提示的渲染。也可以在 routeRules
中进行精细配置。
您还可以在 routeRules
中更精细地禁用脚本。
如果设置为 'production' 或 true
,JavaScript 将仅在生产模式下禁用。如果设置为 'all',JavaScript 将在开发和生产模式下禁用。
export default defineNuxtConfig({
features: {
noScripts: true, // or 'production' | 'all' | false
},
})
未来
还有一个 future
命名空间,用于提前选择新特性,这些特性将在框架的未来(可能主要)版本中成为默认设置。
compatibilityVersion
这使得可以提前访问 Nuxt 特性或标志。
将 compatibilityVersion
设置为 5
会改变您 Nuxt 配置中的默认设置,以选择 Nuxt v5 的行为。
export default defineNuxtConfig({
future: {
compatibilityVersion: 5,
},
})
multiApp
这使得可以提前访问实验性的多应用支持。您可以关注跟踪问题 #21635以查看 Nuxt 中多应用支持的进展。
export default defineNuxtConfig({
future: {
multiApp: true,
},
})
typescriptBundlerResolution
这为 TypeScript 启用了“Bundler”模块解析模式,这是 Nuxt 等框架的推荐设置,并且Vite.
它在使用带有 exports
的现代库时改进了类型支持。
请参阅原始的 TypeScript pull request.
您可以将其设置为 false 以使用传统的“Node”模式,这是 TypeScript 的默认设置。
export default defineNuxtConfig({
future: {
typescriptBundlerResolution: false,
},
})