React.js toastr component
npm i --save react-toastr
Static hosted demo site on GitHub.
Check src/app folder.
This module requires to be bundled with webpack/browserify and loads react/addons
internally.
You'll need to download animate.css from here Animate @github
Link to css for styles:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.5.2/animate.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/2.1.3/toastr.min.css">
Then:
var ReactToastr = require("react-toastr");
var {ToastContainer} = ReactToastr; // This is a React Element.
// For Non ES6...
// var ToastContainer = ReactToastr.ToastContainer;
var ToastMessageFactory = React.createFactory(ReactToastr.ToastMessage.animation);
// In a react component:
render () {
return (
<div>
<ToastContainer ref="container"
toastMessageFactory={ToastMessageFactory}
className="toast-top-right" />
<button onClick={this.addAlert}>GGininder</button>
</div>
);
}
Here's a list of React Elements:
This is the container where all ToastMessage
elements will go. Use it by retaining a ref to publish a new toast message:
addAlert () {
this.refs.container.success(
"Welcome welcome welcome!!",
"You are now home my friend. Welcome home my friend.", {
timeOut: 30000,
extendedTimeOut: 10000
});
window.open("http://youtu.be/3SR75k7Oggg");
}
or integrated with your flux architecture?
componentDidMount: function() {
InInDerStore.addChangeListener(this.addAlert);
}
Directly migrated from toastr.js
library, and can be overrided via props
in a React way:
ToastContainer::getDefaultProps
The close button on the toastr is an optional functionality.
closeButton:true
Set the time(in ms) after which the toastr message should automatically close.
timeOut:5000
This prevents duplicate messages from getting triggered.
preventDuplicates:true
To display HTML simply pass JSX instead of strings for title and message arguments:
this.refs.container.success(
<strong>I am a strong title</strong>,
<em>I am an emphasized message</em>
});
Base class for holding a toast message, it will not animate in and out during it's lifecycle.
Provides ToastMessage.animation
and ToastMessage.jQuery
for your choice.
Directly migrated from toastr.js
library, and can be overrided via props
in a React way: