$ gnpm install window-or-global
Use this module to get the global object both on server and client side.
No more window is not defined
errors just peace and flowers.
Advantages:
$ npm i window-or-global
import root from 'window-or-global'
components/my-component.jsx:
import React, { Component } from 'react'
// in node, you'll get the global object instead of crashing by an error
import root from 'window-or-global'
class MyComponent extends Component {
// this method is only invoked in the browser environment
componentDidMount() {
root.addEventListener(/*...*/)
}
componentWillUnmount() {
root.addEventListener(/*...*/)
}
render() {}
}
// Voilà. Enjoy your universal react component! ;)
// No more 'window is not defined' errors when you render your component
// on server side.
You can find a complete test example here. The test passes of course, just type
$ npm test
in your terminal.
MIT © Purpose Industries
Copyright 2013 - present © cnpmjs.org | Home |