mirror of
https://github.com/Raghu-Ch/ReactWeather.git
synced 2026-02-10 11:03:02 -05:00
added ErrorModal.jsx && styling error msg
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
var React = require('react');
|
||||
var WeatherForm = require('WeatherForm');
|
||||
var WeatherMessage = require('WeatherMessage');
|
||||
var ErrorModal = require('ErrorModal');
|
||||
var openWeatherMap = require('openWeatherMap');
|
||||
|
||||
var Weather = React.createClass({
|
||||
@@ -12,7 +13,10 @@ var Weather = React.createClass({
|
||||
handleSearch: function (location) {
|
||||
var that = this;
|
||||
|
||||
this.setState({isLoading: true});
|
||||
this.setState({
|
||||
isLoading: true,
|
||||
errorMessage: undefined
|
||||
});
|
||||
|
||||
openWeatherMap.getTemp(location).then(function (temp) {
|
||||
that.setState({
|
||||
@@ -20,13 +24,15 @@ var Weather = React.createClass({
|
||||
temp: temp,
|
||||
isLoading: false
|
||||
});
|
||||
}, function (errorMessage) {
|
||||
that.setState({isLoading: false});
|
||||
alert(errorMessage);
|
||||
}, function (e) {
|
||||
that.setState({
|
||||
isLoading: false,
|
||||
errorMessage: e.message
|
||||
});
|
||||
});
|
||||
},
|
||||
render: function () {
|
||||
var {isLoading, temp, location} = this.state;
|
||||
var {isLoading, temp, location, errorMessage} = this.state;
|
||||
|
||||
function renderMessage () {
|
||||
if (isLoading) {
|
||||
@@ -36,11 +42,20 @@ var Weather = React.createClass({
|
||||
}
|
||||
}
|
||||
|
||||
function renderError() {
|
||||
if (typeof errorMessage === 'string') {
|
||||
return (
|
||||
<ErrorModal/>
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
return (
|
||||
<div>
|
||||
<h1 className="text-center">Get Weather</h1>
|
||||
<WeatherForm onSearch={this.handleSearch}/>
|
||||
{renderMessage()}
|
||||
{renderError()}
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user