diff --git a/src/Frame.jsx b/src/Frame.jsx index 767362a..2c82d77 100644 --- a/src/Frame.jsx +++ b/src/Frame.jsx @@ -38,6 +38,7 @@ export class Frame extends Component { this._isMounted = false; this.nodeRef = React.createRef(); this.state = { iframeLoaded: false }; + this.contextValue = null; } componentDidMount() { @@ -99,12 +100,21 @@ export class Frame extends Component { const contentDidUpdate = this.props.contentDidUpdate; const win = doc.defaultView || doc.parentView; + + const contextValue = { document: doc, window: win }; + + const prevContextValue = this.contextValue + + if (!prevContextValue || prevContextValue.document !== contextValue.document || prevContextValue.window !== contextValue.window){ + this.contextValue = contextValue + } + const contents = ( - +
{this.props.children}