You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nuxt SSR项目集成@tui-nuxt/editor编辑器不显示且报错如何解决

@tui-nuxt/editor Nuxt SSR 环境异常排查方案

排查修复步骤

  • 校验SSR适配配置
    编辑器依赖浏览器DOM API,服务端渲染阶段不存在window、document对象,未做SSR适配会直接触发初始化报错。
    Nuxt2环境:在nuxt.config.js的build.transpile配置项中加入@tui-nuxt/editor,使用编辑器时用<client-only>标签包裹组件。
    Nuxt3环境:将编辑器封装为后缀带.client.vue的客户端组件,或直接在使用位置外层套<ClientOnly>标签。
  • 校验依赖版本匹配
    @tui-nuxt/editor对Nuxt2、Nuxt3有不同的适配版本,跨版本安装会触发兼容错误。执行npm ls @tui-nuxt/editor nuxt查看版本匹配关系,版本不兼容时卸载当前包后安装对应适配版本即可。
  • 校验样式引入完整性
    编辑器运行依赖自带样式文件,未引入会导致渲染异常。需要在全局样式或编辑器组件内引入基础样式:import '@toast-ui/editor/dist/toastui-editor.css';如果使用了代码高亮、markdown扩展等插件,需要同步引入插件对应的样式文件。
  • 校验初始化执行时机
    不要在服务端生命周期(如Nuxt2的asyncData、fetch,Nuxt3的useAsyncData服务端执行阶段)调用编辑器实例方法,所有编辑器初始化、实例操作都要放在客户端生命周期中执行,比如Nuxt2的mounted钩子、Nuxt3的onMounted钩子。
  • 清除缓存重试
    所有配置修改后,先删除.nuxt、node_modules/.cache目录,再执行构建或启动命令,避免旧缓存导致配置不生效。

最小化验证示例

你可以通过以下测试组件确认配置是否生效:

<!-- Nuxt3 示例,Nuxt2可对应调整语法适配 -->
<template>
  <ClientOnly>
    <TuiEditor v-model="content" />
    <template #fallback>
      编辑器加载中
    </template>
  </ClientOnly>
</template>

<script setup>
import { ref } from 'vue'
const content = ref('测试文本')
</script>

<style scoped>
@import '@toast-ui/editor/dist/toastui-editor.css';
</style>

内容的提问来源于stack exchange,提问作者guillepaivag

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 07:18:03