Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

应该识别页面上所有的 app 实例 #333

Closed
theniceangel opened this issue Apr 11, 2024 · 6 comments · Fixed by #340
Closed

应该识别页面上所有的 app 实例 #333

theniceangel opened this issue Apr 11, 2024 · 6 comments · Fixed by #340

Comments

@theniceangel
Copy link

回到之前提的 issue,#324

不管是同步创建的 app,还是异步创建的 app,只要是同一个 html 上的 app,都应该被记录,从目前的实现来看,只会记录第一个app1,后续通过 createApp 生成的第二个 app2 是不会被记录的,

那考虑一种情况,我把 app1 unmount 了,就会导致插件的 components 那个视图是空的,

还有一种场景,比如我的页面的确只存在一个 主 app,但是我在 create 这个 app 的过程中,里面某个子组件的指令里面通过 createApp 创建出来了 app2,由于 app2 比主 app 先创建,然后被你的插件先记录,就导致了插件的 components 视图只有 app2,没有 app,但是子组件如果销毁了,又导致插件的 components 那个视图是空的,在这个过程中主 app 永远没被你的插件记录

@theniceangel
Copy link
Author

这种情况不会发生在 Chrome 的 VueDevtools 插件里面

@webfansplz
Copy link
Member

https://devtools-next.vuejs.org/guide/features#multiple-apps-support 看一下这个是否是你想要的

@Azurewarth0920
Copy link
Collaborator

不管是同步创建的 app,还是异步创建的 app,只要是同一个 html 上的 app,都应该被记录,从目前的实现来看,只会记录第一个app1,后续通过 createApp 生成的第二个 app2 是不会被记录的,

异步创建的 App 也是可以被 devtools 记录的,这个视频应该可以解答你的疑问。

Screen.Recording.2024-04-11.at.12.21.34.mov

@Azurewarth0920
Copy link
Collaborator

但是 instance unmount 的时候的好像没有处理,我写个 PR 修一下。

@theniceangel
Copy link
Author

theniceangel commented Apr 11, 2024

@Azurewarth0920 你可以用我 #324 提供的 zip 文件测一测,当你切换 app1/app2 的时候,再点击 components tab 是有 bug 的,
image
每次切换 app 的时候,它的 components tree 取的有问题

CC: @webfansplz

@theniceangel
Copy link
Author

Thx.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants