JSPM

  • Created
  • Published
  • Downloads 49030
  • Score
    100M100P100Q158559F

A universal headless toast component for React Native, Next.js & React

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@gluestack-ui/toast) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    @gluestack-style/toast

    Installation

    To use @gluestack-ui/toast, all you need to do is install the @gluestack-ui/toast package:

    $ yarn add @gluestack-ui/toast
    
    # or
    
    $ npm i @gluestack-ui/toast

    Usage

    Toast is a component that can display alerts, notifications, or messages on top of an overlay layer. It is commonly used to inform users of important information or actions. Here's an example how to use this package to create one:

    import { Root, Title, Description } from './styled-components';
    import { createToast, createToastHook } from '@gluestack-ui/toast';
    
    export const toast = createtoast({
      Root,
      Title,
      Description,
    });

    Customizing the toast:

    Default styling of all these components can be found in the components/core/toast file. For reference, you can view the source code of the styled toast components.

    // import the styles
    import {
      Root,
      Title,
      Description,
    } from '../components/core/toast/styled-components';
    
    // import the createtoast and createToastHook function
    import { createToast, createToastHook } from '@gluestack-ui/toast';
    
    // Understanding the API
    export const toast = createtoast({
      Root,
      Title,
      Description,
    });
    
    const useToast = createToastHook(Toast);
    
    // Using the toast component
    export default () => {
      const toast = useToast();
      return (
        <Button
          {...props}
          onPress={() => {
            toast.show({
              placement: placement,
              render: ({ id }) => {
                return (
                  <Toast nativeId={id}>
                    <ToastTitle>Hello World Toast {id}</ToastTitle>
                  </Toast>
                );
              },
            });
          }}
        >
          <ButtonText>Press Me</ButtonText>
        </Button>
      );
    };

    More guides on how to get started are available here.