Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
kcforsman committed Jun 19, 2018
2 parents 49c611f + 784fca9 commit 6307660
Show file tree
Hide file tree
Showing 4 changed files with 101 additions and 0 deletions.
Empty file added src/components/Movie.css
Empty file.
30 changes: 30 additions & 0 deletions src/components/Movie.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import React, { Component } from 'react';
import PropTypes from 'prop-types';

import './Movie.css';

class Movie extends Component {

render() {
console.log('Rendering');
return (
<article className="movie-summary">
<p> {this.props.url}</p>
<h3> {this.props.title}</h3>
<p> {this.props.release_date}</p>
<p> {this.props.inventory}</p>
</article>
)
}
}


Movie.propTypes = {
title: PropTypes.string.isRequired,
// release_date: PropTypes.datetime.isRequired,
inventory: PropTypes.number.isRequired,
image_url: PropTypes.string.isRequired,
external_id: PropTypes.number.isRequired,
}

export default Movie;
1 change: 1 addition & 0 deletions src/components/RentalLibrary.css
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

70 changes: 70 additions & 0 deletions src/components/RentalLibrary.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
import React, { Component } from 'react';
import PropTypes from 'prop-types';

import axios from 'axios';

import './RentalLibrary.css';
import Movie from './Movie';

class RentalLibrary extends Component {

constructor(props) {
super(props);

this.state = {
movies: [],
}
}

componentDidMount = () => {
console.log('Component did mount was called');

axios.get('')
.then( (response) => {
console.log( response.data );
this.setState({
movies: response.data
});
} )
.catch( (error) => {
console.log("got to the error");
console.log(error);
this.setState({
error: error.message
});
} );
}

renderMovieList = () => {
console.log('Rendering Movie List');
const componentList = this.state.movie.map((movie, index) => {
return (
<Movie
key={index}
title={movie.title}
release_date={movie.release_date}
inventory={movie.inventory}
external_id={movie.external_id}
/>
);
});

return componentList;
}

render() {
return (
<section>
<header>
{this.state.message ? this.state.message: "" }
</header>
{this.renderMovieList()}
</section>
);
}
}

RentalLibrary.propTypes = {
}

export default RentalLibrary;

0 comments on commit 6307660

Please sign in to comment.