Components
Compose
Code

Compose

Compose(props): null | ReactElement<any, string | JSXElementConstructor<any>>

Composes immediate child with its props and child own props. Used to implement Shoreline composition

Parameters

NameType
propsComposeProps & RefAttributes<any>

Returns

null | ReactElement<any, string | JSXElementConstructor<any>>

Example

example.tsx
function Button({ asChild, ...props }) {
  const Composition = asChild ? Compose : "button";
  return <Composition {...props} />;
}
import React from 'react'
import { Composition } from '@vtex/shoreline-components'

export default function App() {
return (<>
function Button({ asChild, ...props }){
const Composition = asChild ? Compose : 'button'
return <Composition {...props} />
}
</>
)}

Defined in

node_modules/.pnpm/@types+react@18.2.14/node_modules/@types/react/ts5.0/index.d.ts:355