Open
Conversation
Collaborator
这个地方感觉有问题呢,子应用window监听为啥不绑子应用的iframewindow,如果采用window.WUJIE_RAW_WINDOW,意味着绑定的是主应用的window哦 |
|
子应用使用window.WUJIE_RAW_WINDOW监听message,子应用内嵌的iframe发送信息时应该怎么取target呢 |
|
好像拿到的window还是无界项目的啊 |
Collaborator
postmessage 的使用已经在demo更新了 |
|
完全就没解决问题,我项目主应用会多次实例化子应用,子应用也会多次实例化iframe,如果由主应用来分发事件,根本无法解决这个消息是哪个子应用的的哪个iframe触发的,导致一个事件,全部都执行 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
npm run test通过详细描述
问题描述:

在子应用中,如果出现iframe 场景,使用的postmessage传递消息, 会出现事件派发到基座的 window,而并非子应用的window
原因:

patchIframeEvents 中对 iframe 事件的处理,当未指定 options.targetWindow 时,使用的是iframeWindow, 应该优先使用window.WUJIE_RAW_WINDOW