For AI agents: the complete documentation index is available at /zh/llms.txt, the full documentation bundle is available at /zh/llms-full.txt, and this page is available as Markdown at /zh/api/react.createportal.md.
这是开发预览网站。请访问正式文档 lynxjs.org

Home > @lynx-js/react > createPortal

createPortal() function

Renders vnode into container instead of the current component's position in the element tree, while keeping it in the React tree.

container is a NodesRef, obtained either from a callback ref or from lynx.createSelectorQuery().select(...).

Signature:

export declare function createPortal(vnode: ComponentChild, container: NodesRef): ReactNode;

Parameters

Parameter

Type

Description

vnode

ComponentChild

The React node to render into container.

container

NodesRef

The NodesRef target to render into.

Returns:

ReactNode

A ReactNode placeholder to include in the JSX at the call site; the rendered output goes into container.

Remarks

Context still flows across the portal boundary, and state updates inside the portal behave like they do in any other component. A few behaviors differ from react-dom:

  • Events do not bubble along the React tree. ReactLynx follows Preact's approach, which has no synthetic event system, so events follow the actual element structure of the page. - The portaled subtree renders on the background thread only, and does not participate in main-thread first-screen rendering. - Mounting across pages or across native containers is not supported.