@kessl/next-flash
TypeScript icon, indicating that this package has built-in type declarations

1.0.3 • Public • Published

Flash messages for next.js

Flash messages for next.js. Works on both the client and the server.

Examples

Example use in a server context:

import flash from '@kessl/next-flash'

server.get('/set', (req, res) => {
  flash.set({ req, res }, { testFlash: 'Test flash message' });
  res.send('Flash message set');
});

server.get('/get', (req, res) => {
  const flash = flash.get({ req, res });
  res.send('Active flash messages: ' + JSON.stringify(flash));
});

Example use in a client context:

import flash from 'next-flash';

export default class Page extends Component {
  static async getInitialProps (ctx) {
    return flash.get(ctx) || {}
  }

  create () {
    flash.set({ name: 'matt' })
  }

  render () {
    return (
      <div>
        <Head>
          <title>Flash messages in Next</title>
          <meta name='viewport' content='width=device-width, initial-scale=1' />
        </Head>
        { this.props.name ? <div>FLASH MESSAGE {this.props.name}</div> : <div /> }
        <button onClick={() => this.create()}>Create flash message</button>
        <br />
        <Link href={`/?${Date.now()}`}>Client-Side Route</Link>
      </div>
    )
  }
}

Installation

npm install --save @kessl/next-flash

License

MIT

Package Sidebar

Install

npm i @kessl/next-flash

Weekly Downloads

1

Version

1.0.3

License

MIT

Unpacked Size

4.86 kB

Total Files

4

Last publish

Collaborators

  • kessl