4.8.5 • Published 4 years ago

react-querystring-router v4.8.5

Weekly downloads
13
License
MIT
Repository
github
Last release
4 years ago

react-querystring-router

Bare router for React components, using query string as props.

http://mysite.com/?component=Father&eyes=blue&mood=happy

By making use of the getComponentClass and getComponentProps callbacks, this route will render the following element:

<Father
  eyes="blue"
  mood="happy"
/>

Options

import { Router } from 'react-querystring-router';

const myRouter = new Router({
  // This is how the router maps component names to corresponding classes
  getComponentClass: ({ component }) => require(`components/${component}.jsx`),
  // This is to combine url params with default and additional props
  getComponentProps: (params) => {
    return {
      unlessOverridden: true,
      ...params,
      alwaysHere: true,
    };
  },
  // Tell React where to render in the DOM
  container: document.getElementById('content'),
  // Called whenever the route changes (also initially), receiving the parsed
  // props as the first argument
  onChange: (params) => {
    // E.g. Use the params to set a custom document.title
  }
});

The router always sends a reference to itself to the rendered component through the router prop.

Changing the route

import { uri } from 'react-querystring-router';
const { stringifyParams } = uri;

//...

render() {
  return (
    <div className="serious-component">
      <a href={stringifyParams({ lifeChangingProp: 1 })}
         onClick={this.props.router.routeLink}>
         Click me por favor
      </a>
    </div>
  );
};
4.8.5

4 years ago

4.8.2

5 years ago

4.8.0-alpha.0

5 years ago

4.7.0-24

5 years ago

4.7.0-23

5 years ago

4.7.0-22

5 years ago

4.7.0-21

5 years ago

4.7.0-20

5 years ago

4.7.0-19

5 years ago

4.7.0-18

5 years ago

4.7.0-17

6 years ago

4.7.0-16

6 years ago

4.7.0-15

6 years ago

4.7.0-14

6 years ago

4.7.0-13

6 years ago

4.7.0-12

6 years ago

4.7.0-11

6 years ago

4.7.0-10

6 years ago

4.7.0-9

6 years ago

4.7.0-8

6 years ago

4.7.0-7

6 years ago

4.7.0-6

6 years ago

4.7.0-5

6 years ago

4.7.0-4

6 years ago

4.7.0-3

6 years ago

4.7.0-0

6 years ago

4.6.1

6 years ago

4.6.0

6 years ago

4.6.0-6

6 years ago

4.6.0-5

6 years ago

4.6.0-4

6 years ago

4.6.0-3

6 years ago

4.6.0-2

6 years ago

4.6.0-1

6 years ago

4.6.0-0

6 years ago

4.3.0

6 years ago

4.3.0-0

6 years ago

4.2.1

6 years ago

4.2.0

6 years ago

4.2.0-0

6 years ago

4.1.2

6 years ago

4.1.1

6 years ago

4.1.0

6 years ago

4.0.0

6 years ago

4.0.0-rc.3

6 years ago

4.0.0-rc.2

6 years ago

4.0.0-rc.1

6 years ago

4.0.0-beta.17

6 years ago

4.0.0-beta.16

6 years ago

4.0.0-beta.15

6 years ago

4.0.0-beta.14

6 years ago

4.0.0-beta.13

6 years ago

4.0.0-beta.12

6 years ago

4.0.0-beta.11

6 years ago

4.0.0-beta.10

6 years ago

4.0.0-beta.9

6 years ago

4.0.0-beta.8

6 years ago

4.0.0-beta.7

6 years ago

4.0.0-beta.6

6 years ago

4.0.0-beta.5

6 years ago

4.0.0-beta.4

6 years ago

4.0.0-beta.3

6 years ago

4.0.0-y.0

6 years ago

4.0.0-beta.2

6 years ago

4.0.0-beta.1

6 years ago

4.0.0-beta.0

6 years ago

3.100.0-alpha.1

6 years ago

3.6.1

6 years ago

3.6.0

6 years ago

3.1.1

6 years ago

3.0.0

6 years ago

3.0.0-rc.7

6 years ago

3.0.0-rc.6

6 years ago

3.0.0-rc.5

6 years ago

3.0.0-rc.4

6 years ago

3.0.0-rc.3

6 years ago

3.0.0-rc.2

6 years ago

3.0.0-rc.1

6 years ago

3.0.0-beta.13

6 years ago

3.0.0-beta.12

6 years ago

3.0.0-beta.11

6 years ago

3.0.0-beta.10

6 years ago

3.0.0-beta.5

7 years ago

3.0.0-beta.1

7 years ago

3.0.0-alpha.2

7 years ago

2.0.0

7 years ago

2.0.0-rc.1

7 years ago

2.0.0-beta.23

7 years ago

2.0.0-beta.22

7 years ago

2.0.0-beta.20

7 years ago

2.0.0-beta.15

7 years ago

2.0.0-beta.13

7 years ago

2.0.0-beta.11

7 years ago

2.0.0-beta.9

7 years ago

2.0.0-beta.6

7 years ago

2.0.0-beta.5

7 years ago

2.0.0-beta.4

7 years ago

2.0.0-beta.1

7 years ago

1.1.0

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago

1.0.0-beta.9

8 years ago

1.0.0-beta.8

8 years ago

1.0.0-beta.5

8 years ago

1.0.0-beta.4

8 years ago

1.0.0-beta.2

8 years ago

1.0.0-beta.0

8 years ago

0.4.0

8 years ago

0.3.0

8 years ago

0.2.1

8 years ago

0.2.0

9 years ago