import * as React from 'react'; import 'isomorphic-fetch'; interface FetchDataExampleState { forecasts: WeatherForecast[]; loading: boolean; } export class FetchData extends React.Component<{}, FetchDataExampleState> { constructor() { super(); this.state = { forecasts: [], loading: true }; fetch('api/SampleData/WeatherForecasts') .then(response => response.json() as Promise) .then(data => { this.setState({ forecasts: data, loading: false }); }); } public render() { let contents = this.state.loading ?

Loading...

: FetchData.renderForecastsTable(this.state.forecasts); return

Weather forecast

This component demonstrates fetching data from the server.

{ contents }
; } private static renderForecastsTable(forecasts: WeatherForecast[]) { return {forecasts.map(forecast => )}
Date Temp. (C) Temp. (F) Summary
{ forecast.dateFormatted } { forecast.temperatureC } { forecast.temperatureF } { forecast.summary }
; } } interface WeatherForecast { dateFormatted: string; temperatureC: number; temperatureF: number; summary: string; }