Advertisement
Guest User

Untitled

a guest
Mar 29th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.66 KB | None | 0 0
  1. import React, { Component, PropTypes } from 'react';
  2.  
  3. export const ScrollProvider = ({ context }) => (Wrapped) => {
  4. return class Scroll extends Component {
  5.  
  6. constructor(props) {
  7. super(props);
  8. this.state = {
  9. scrollTop: 0
  10. };
  11. }
  12.  
  13. static childContextTypes = {
  14. [context]: PropTypes.number
  15. }
  16.  
  17. getChildContext() {
  18. return { [context]: this.state.scrollTop };
  19. }
  20.  
  21. handleScroll = (e) => {
  22. this.setState({
  23. scrollTop: e.target.scrollTop
  24. });
  25. }
  26.  
  27. render() {
  28. return (
  29. <div onScroll={this.handleScroll}>
  30. <Wrapped {...this.props} />
  31. </div>
  32. );
  33. }
  34.  
  35. };
  36. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement