Привет, меня зовут Infanty, мой профиль в LinkedIn.
Я пишу how-to статьи на редкие темы или статьи обзоры - для себя и тех кто со мной работает.

Пример компонента, реализующего страницу, на которой футер "прижат" к "низу" страницы:

import React from 'react'
class exampleComponent extends React.Component {
  constructor(props) {
    super(props)

    this.state = {
      appHeight: 0,
      winHeight: 0,
    }

    this.updateWindowDimensions = this.updateWindowDimensions.bind(this)
  }

  componentDidMount() {
    this.updateWindowDimensions()
    window.addEventListener('resize', this.updateWindowDimensions)
  }

  componentWillUnmount() {
    window.removeEventListener('resize', this.updateWindowDimensions)
  }

  updateWindowDimensions() {
    this.setState({
      appHeight: this.divElement.clientHeight,
      winHeight: window.innerHeight,
    })
  }

  isFooterStiky() {
    return this.state.appHeight > 0 &&
      this.state.winHeight > 0 &&
      this.state.appHeight < this.state.winHeight
      ? 'stikybottom'
      : ''
  }

  render() {
    return (
      <div className="app" ref={divElement => (this.divElement = divElement)}>
        <div className="body">
          <img
            src="http://example.com/img.jpg"
            onLoad={this.updateWindowDimensions.bind(this)}
          />
        </div>

        <div className={`footer-info ${isFooterStiky}`}>
          Footer
        </div>
      </div>
    )
  }
}

export default exampleComponent

CSS необходимый для "прижатия" футера к "низу" страницы:

.stikybottom {
  position: fixed;
  bottom:0;
}

При использовании данного примера - важно помнить, что использование flex (CSS) является более эффективным решением задачи "прижатия" футера к "низу" страницы.