Docs

<SignUpButton>

The <SignUpButton> component is a button that links to the sign-up page or displays the sign-up modal.

Properties

  • Name
    asChild?
    Type
    boolean
    Description

    For Astro only: If true, the <SignUpButton> component will render its children as a child of the component.

  • Name
    forceRedirectUrl?
    Type
    string
    Description

    If provided, this URL will always be redirected to after the user signs up. It's recommended to use the environment variable instead.

  • Name
    fallbackRedirectUrl?
    Type
    string
    Description

    The fallback URL to redirect to after the user signs up, if there's no redirect_url in the path already. Defaults to /. It's recommended to use the environment variable instead.

  • Name
    signInForceRedirectUrl?
    Type
    string
    Description

    If provided, this URL will always be redirected to after the user signs in. It's recommended to use the environment variable instead.

  • Name
    signInFallbackRedirectUrl?
    Type
    string
    Description

    The fallback URL to redirect to after the user signs in, if there's no redirect_url in the path already. Defaults to /. It's recommended to use the environment variable instead.

  • Name
    mode?
    Type
    'redirect' | 'modal'
    Description

    Determines what happens when a user clicks on the <SignUpButton>. Setting this to 'redirect' will redirect the user to the sign-up route. Setting this to 'modal' will open a modal on the current route.
    Defaults to 'redirect'

  • Name
    children?
    Type
    React.ReactNode
    Description

    Children you want to wrap the <SignUpButton> in.

pages/index.js
import { SignUpButton } from '@clerk/nextjs'

export default function Home() {
  return <SignUpButton />
}
example.js
import { SignUpButton } from '@clerk/clerk-react'

export default function Example() {
  return <SignUpButton />
}
pages/index.js
import { SignUpButton } from '@clerk/remix'

export default function Home() {
  return <SignUpButton />
}
pages/index.astro
---
import { SignUpButton } from '@clerk/astro/components'
---

<SignUpButton />

Custom usage

You can create a custom button by wrapping your own button, or button text, in the <SignUpButton> component.

pages/index.js
import { SignUpButton } from '@clerk/nextjs'

export default function Home() {
  return (
    <SignUpButton>
      <button>My custom button</button>
    </SignUpButton>
  )
}
example.js
import { SignUpButton } from '@clerk/clerk-react'

export default function Example() {
  return (
    <SignUpButton>
      <button>My custom button</button>
    </SignUpButton>
  )
}
pages/index.js
import { SignUpButton } from '@clerk/remix'

export default function Home() {
  return (
    <SignUpButton>
      <button>My custom button</button>
    </SignUpButton>
  )
}

You must pass the asChild prop to the <SignUpButton> component if you are passing children to it.

pages/index.astro
---
import { SignUpButton } from '@clerk/astro/components'
---

<SignUpButton asChild>
  <button>My custom button</button>
</SignUpButton>

Feedback

What did you think of this content?

Last updated on