- 配置参考 Configuration
- 入门指南
- 介绍 Introduction
- 安装 Installation
- 配置 Configuration
- 视图 Views
- 资产 Assets
- 路由 Routing
- SEO and Meta
- 过渡 Transitions
- 数据获取 Data Fetching
- 状态管理 State Management
- 错误处理 Error handling
- 层结构 Layers
- 部署 Deployment
- 测试 Testing
- 升级指南 Upgrade Guide
- 核心概念
- 自动导入 Auto imports
- Vue.Js Vue.js Development
- 渲染模式 Rendering Modes
- 服务端引擎 Server Engine
- 模块化 Modules
- ES模块 ES Modules
- TypeScript TypeScript
- 目录结构
- 可组合项
- 组件
- 工具库
- fetch
- abortNavigation
- addRouteMiddleware
- clearError
- clearNuxtData
- createError
- defineNuxtComponent
- defineNuxtRouteMiddleware
- definePageMeta
- navigateTo
- onBeforeRouteLeave
- onBeforeRouteUpdate
- onNuxtReady
- prefetchComponents
- preloadComponents
- preloadRouteComponents
- refreshNuxtData
- reloadNuxtApp
- setPageLayout
- setResponseStatus
- showError
- updateAppConfig
- CLI 命令
- 进阶
- 深入探究
- 迁移指南
配置 Configuration
nuxt.config
Nuxt 应用程序的起点仍然是您的 nuxt.config
文件。
Nuxt 配置将使用 unjs/jiti
和 unjs/c12
加载。
迁移步骤
Nuxt 和 Nuxt 模块现在仅限构建时。
迁移步骤
static/
目录(用于存储静态资产)已重命名为 public/
。 您可以将 static
目录重命名为 public
,或者通过在 nuxt.config
中设置 dir.public
来保留名称。
TypeScript
如果您使用 Nuxt 的 TypeScript 集成,那么迁移您的应用程序会容易得多。 这并不意味着您需要使用 TypeScript 编写您的应用程序,只是 Nuxt 将为您的编辑器提供自动类型提示。
您可以 在文档中 阅读更多关于 Nuxt 的 TypeScript 支持的信息。
Nuxt 可以使用 vue-tsc
和 nuxi typecheck
命令对您的应用程序进行类型检查。
迁移步骤
推荐的 Vue 最佳实践有很多变化,Vue 2 和 3 之间也有一些重大变化。
建议阅读 Vue 3 迁移指南,尤其是 重大变更列表。
目前无法将 Vue 3 迁移构建 与 Nuxt 3 一起使用。
Vuex
Nuxt 不再提供 Vuex 集成。 相反,官方 Vue 建议使用 pinia
,它通过 Nuxt 模块 内置了 Nuxt 支持。 在此处了解更多关于 pinia 的信息。
使用 pinia 提供全局状态管理的一种简单方法是:
安装 @pinia/nuxt 模块:
bashyarn add pinia @pinia/nuxt
在应用程序的根目录下创建一个 store
文件夹:
import { defineStore } from 'pinia'
export const useMainStore = defineStore('main', {
state: () => ({
counter: 0,
}),
actions: {
increment() {
// `this` is the store instance
this.counter++
},
},
})
创建一个 plugin 文件来全球化您的商店:
plugins/pinia.tsimport { useMainStore } from '~/store'
export default defineNuxtPlugin(({ $pinia }) => {
return {
provide: {
store: useMainStore($pinia)
}
}
})
如果您想继续使用 Vuex,可以按照 这些步骤 手动迁移到 Vuex 4。
完成后,您需要将以下插件添加到您的 Nuxt 应用程序中:
plugins/vuex.tsimport store from '~/store'
export default defineNuxtPlugin(nuxtApp => {
nuxtApp.vueApp.use(store);
})
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论