twister-react/node_modules/react-mixin-safe-state-change
2015-05-17 19:08:10 +02:00
..
index.js cache is now automatically trimmed by 2 weeks 2015-05-17 19:08:10 +02:00
LICENSE cache is now automatically trimmed by 2 weeks 2015-05-17 19:08:10 +02:00
package.json cache is now automatically trimmed by 2 weeks 2015-05-17 19:08:10 +02:00
README.md cache is now automatically trimmed by 2 weeks 2015-05-17 19:08:10 +02:00

react-mixin-safe-state-change

npm version npm downloads

React mixin which sets or replaces state only when it is safe to do so.

Motivation

When processing the response of an asynchronous request, it might not be safe to call setState or replaceState, because the component might no longer be mounted.

Install

npm install react-mixin-safe-state-change

Usage

var safeStateChangeMixin = require('react-mixin-safe-state-change');

React.createClass({
  mixins: [safeStateChangeMixin]

  someCallback: function(newValue) {
    if (!this.setStateSafe({value: newValue})) {
      console.warn('Could not set the state.');
    }

    // or

    if (!this.replaceStateSafe({value: newValue})) {
      console.warn('Could not replace the state.');
    }
  }
});