didi / LogicFlow

A flow chart editing framework focus on business customization. 专注于业务自定义的流程图编辑框架,支持实现脑图、ER图、UML、工作流等各种图编辑场景。
https://site.logic-flow.cn
Apache License 2.0
8.79k stars 1.14k forks source link

[Bug Report]: angular17 ssr的问题 #1524

Closed msx15615634157 closed 3 months ago

msx15615634157 commented 8 months ago

What happened?

我的angular17的项目,而且需要ssr,最近引入logicflow后,ssr失败了。 An unhandled exception occurred: window is not defined

经过排查发现,一直使用的 if (判断是浏览器环境) { 执行浏览器操作 }else{ node环境 } 方案失效了

发现,极端的条件下,只要出现了LogicFlow的声明,都会导致window not defined。明明以下的代码不可达,仍然会触发ssr的失败,这让我很苦恼 if (false) { console.log(LogicFlow) } demo-ssr.zip

Core Version

1.2.22

Extension Version

1.2.22

Engine Version

No response

What browsers are you seeing the problem on?

No response

boyongjiong commented 8 months ago

能们定位一下 window is not defined 是哪儿触发的吗,内部一些方法是用到了 window,ssr 预编译的时候可能会导致报错,但我现在看不出来是哪个导致的

msx15615634157 commented 8 months ago

angular的ssr报错,一言难尽。就像demo里面报的错的一样,就那么一行,其余什么有用信息都没有。不知道vue的ssr会不会有不同

boyongjiong commented 3 months ago

你抽空试一下?我今天在一个 utils 中 isIe 方法,我看定义的是变量,它会在初始化的时候执行,会导致报 window is not defined 的错误。

@logicflow/core@2.0.3