4.8.5 • Published 5 years ago

react-querystring-router v4.8.5

Weekly downloads
13
License
MIT
Repository
github
Last release
5 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

5 years ago

4.8.2

6 years ago

4.8.0-alpha.0

6 years ago

4.7.0-24

6 years ago

4.7.0-23

6 years ago

4.7.0-22

6 years ago

4.7.0-21

6 years ago

4.7.0-20

6 years ago

4.7.0-19

6 years ago

4.7.0-18

7 years ago

4.7.0-17

7 years ago

4.7.0-16

7 years ago

4.7.0-15

7 years ago

4.7.0-14

7 years ago

4.7.0-13

7 years ago

4.7.0-12

7 years ago

4.7.0-11

7 years ago

4.7.0-10

7 years ago

4.7.0-9

7 years ago

4.7.0-8

7 years ago

4.7.0-7

7 years ago

4.7.0-6

7 years ago

4.7.0-5

7 years ago

4.7.0-4

7 years ago

4.7.0-3

7 years ago

4.7.0-0

7 years ago

4.6.1

7 years ago

4.6.0

7 years ago

4.6.0-6

7 years ago

4.6.0-5

7 years ago

4.6.0-4

7 years ago

4.6.0-3

7 years ago

4.6.0-2

7 years ago

4.6.0-1

7 years ago

4.6.0-0

7 years ago

4.3.0

7 years ago

4.3.0-0

7 years ago

4.2.1

7 years ago

4.2.0

7 years ago

4.2.0-0

7 years ago

4.1.2

7 years ago

4.1.1

7 years ago

4.1.0

7 years ago

4.0.0

7 years ago

4.0.0-rc.3

7 years ago

4.0.0-rc.2

7 years ago

4.0.0-rc.1

7 years ago

4.0.0-beta.17

7 years ago

4.0.0-beta.16

7 years ago

4.0.0-beta.15

7 years ago

4.0.0-beta.14

7 years ago

4.0.0-beta.13

7 years ago

4.0.0-beta.12

7 years ago

4.0.0-beta.11

7 years ago

4.0.0-beta.10

7 years ago

4.0.0-beta.9

7 years ago

4.0.0-beta.8

7 years ago

4.0.0-beta.7

7 years ago

4.0.0-beta.6

7 years ago

4.0.0-beta.5

7 years ago

4.0.0-beta.4

7 years ago

4.0.0-beta.3

7 years ago

4.0.0-y.0

7 years ago

4.0.0-beta.2

7 years ago

4.0.0-beta.1

7 years ago

4.0.0-beta.0

7 years ago

3.100.0-alpha.1

7 years ago

3.6.1

7 years ago

3.6.0

7 years ago

3.1.1

8 years ago

3.0.0

8 years ago

3.0.0-rc.7

8 years ago

3.0.0-rc.6

8 years ago

3.0.0-rc.5

8 years ago

3.0.0-rc.4

8 years ago

3.0.0-rc.3

8 years ago

3.0.0-rc.2

8 years ago

3.0.0-rc.1

8 years ago

3.0.0-beta.13

8 years ago

3.0.0-beta.12

8 years ago

3.0.0-beta.11

8 years ago

3.0.0-beta.10

8 years ago

3.0.0-beta.5

8 years ago

3.0.0-beta.1

8 years ago

3.0.0-alpha.2

8 years ago

2.0.0

8 years ago

2.0.0-rc.1

8 years ago

2.0.0-beta.23

8 years ago

2.0.0-beta.22

8 years ago

2.0.0-beta.20

8 years ago

2.0.0-beta.15

8 years ago

2.0.0-beta.13

8 years ago

2.0.0-beta.11

8 years ago

2.0.0-beta.9

8 years ago

2.0.0-beta.6

8 years ago

2.0.0-beta.5

8 years ago

2.0.0-beta.4

8 years ago

2.0.0-beta.1

9 years ago

1.1.0

9 years ago

1.0.1

9 years ago

1.0.0

9 years ago

1.0.0-beta.9

9 years ago

1.0.0-beta.8

9 years ago

1.0.0-beta.5

9 years ago

1.0.0-beta.4

9 years ago

1.0.0-beta.2

9 years ago

1.0.0-beta.0

9 years ago

0.4.0

9 years ago

0.3.0

10 years ago

0.2.1

10 years ago

0.2.0

10 years ago