2016-12-19 5 views
0

У меня есть счетчик, который подсчитывает число на странице. Мне нужно, чтобы он запускал пользователь, который прокручивается до этой точки на странице. Как мне это сделать с помощью Waypoint? Или есть другое решение?использовать Waypoint с React для выполнения функции после прокрутки

import React, { Component } from 'react'; 
import Waypoint from 'react-waypoint'; 

var Counter2017 = React.createClass({ 

    getInitialState: function() { 
     return {visionElapsed: 0}; 
    }, 
    tick: function() { 
     if (this.state.visionElapsed < 125) { 
     this.setState({visionElapsed: this.state.visionElapsed + 1}); 
     } 
    }, 
    componentDidMount: function() { 
     this.interval = setInterval(this.tick, 15); 
    }, 
    componentWillUnmount: function() { 
     clearInterval(this.interval); 
    }, 
    render: function() { 
     return (
     <span>{this.state.visionElapsed}</span> 
    ); 
    } 
}); 

export default Counter2017; 

ответ

0

Вы вставить точку, где вы хотите его видеть (это DOM-элемент).

Таким образом, вы бы что-то, что выглядит следующим образом:

<div> 
    <AnyComponents /> 
    <Waypoint 
    onEnter={() => this.interval = yourInterval} 
    /> 
</div> 

Конечно, вы можете проверить, если уже есть интервал, так что вы не отменяют его. Вы также можете установить реквизиты onLeave на компонент Waypoint. Я предлагаю вам прочитать об этом здесь: https://github.com/brigade/react-waypoint

+0

Я новичок в реактиве, есть ли пример с моим компонентом выше того, как это сделать? –