wangEditor
wangEditor copied to clipboard
使用TS+服务端渲染时,类型接口无法导入,导入即报错
问题描述
使用TS+服务端渲染时,类型接口无法导入,导入即报错
wangEditor 版本
"@wangeditor/editor": "^5.1.14",
"@wangeditor/editor-for-vue": "^1.0.2",
是否查阅了文档 ?
是
最小成本的复现步骤
因为是服务端渲染,所以无法直接导入 @wangeditor/editor-for-vue
,必须用如下方式导入
const wangEditor = process.browser ? require('@wangeditor/editor-for-vue') : undefined // 服务端渲染初始化时没有 window 等对象,直接导入将报错
@Component({
components: wangEditor
? {
Editor: wangEditor.Editor,
Toolbar: wangEditor.Toolbar,
}
: {},
})
export default class ArticleEditor extends Vue {}
但是类型接口貌似无法通过这种方式来导入,直接导入的话又会报错,自己重新把类型定义一遍感觉又有点傻。想知道有没有那种纯@types的包,或者有什么好的解决方案吗
你是用 nuxt 吗
你是用 nuxt 吗
对的,采用的nuxt2+ts
很抱歉,你提供的信息过于笼统,无法定位啥原因
就是我在导入类型时会直接报错。在导入@wangeditor/editor
这个包的时候,你们应该做了初始化,比如window上挂载什么事件之类的操作(即使我并不需要导入整个包的内容,我只想导入一个类型而已),但因为采用的服务端渲染,服务端没有window,会导致报错
import { IEditorConfig } from '@wangeditor/editor'