mirror of https://github.com/perkeep/perkeep.git
29 lines
611 B
JavaScript
29 lines
611 B
JavaScript
goog.provide('SpritedAnimation');
|
|
|
|
goog.require('SpritedImage');
|
|
goog.require('object');
|
|
|
|
var SpritedAnimation = React.createClass({
|
|
getInitialState: function() {
|
|
return {
|
|
index: 0
|
|
}
|
|
},
|
|
|
|
componentDidMount: function(root) {
|
|
this.timerId_ = window.setInterval(function() {
|
|
this.setState({
|
|
index: ++this.state.index % (this.props.sheetWidth * this.props.sheetHeight)
|
|
})
|
|
}.bind(this), this.props.interval);
|
|
},
|
|
|
|
componentWillUnmount: function() {
|
|
window.clearInterval(this.timerId_);
|
|
},
|
|
|
|
render: function() {
|
|
return SpritedImage(extend(this.props, {index: this.state.index}));
|
|
}
|
|
});
|