Book Image

React.js Essentials

By : Artemij Fedosejev
Book Image

React.js Essentials

By: Artemij Fedosejev

Overview of this book

Table of Contents (18 chapters)
React.js Essentials
Credits
Foreword
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Setting default React component properties


As you know from the previous chapter, our StreamTweet component renders two child components: Header and Tweet.

Let's create these components. Navigate to ~/snapterest/source/components/ and create the Header.react.js file:

var React = require('react');

var headerStyle = {
  fontSize: '16px',
  fontWeight: '300',
  display: 'inline-block',
  margin: '20px 10px'
};

var Header = React.createClass({

  getDefaultProps: function () {
    return {
      text: 'Default header'
    };
  },

  render: function () {
    return (
      <h2 style={headerStyle}>{this.props.text}</h2>
    );
  }
});

module.exports = Header;

As you can see, our Header component is a stateless component that renders the h2 element. The header text is passed from a parent component as a this.props.text property, which makes this component flexible, that allows us to reuse it anywhere where we need a header. We'll reuse this component again later in this book.

Notice...