2017-09-16 16 views
0

私はReactを初めて使っていますが、JSを使っていません。 は、ここで私はクラスの中でReact properties/function assignment/declaration

// @flow 

import React, { Component } from 'react'; 
import ShowCard from './ShowCard'; 
import Header from './Header'; 

class Search extends Component { 
    state = { 
    searchTerm: '' 
    }; 
    props: { 
    shows: Array<Show> 
    }; 
    handleSearchTermChange = (event: SyntheticKeyboardEvent & {target: HTMLInputElement}) => { 
    this.setState({ searchTerm: event.target.value }); 
    }; 
    render() { 
    return (
     <div className="search"></div> 
    ); 
    } 
} 

export default Search; 

state = ...props: {..ような表現があるが理解できなかったことを、コードの一部です。 render(){}およびhandleSearchTermChange = (...のような関数定義もあります。 これらすべての有効なES6のうち1つはrenderです。どのように機能するのですか?私がstate/propsに割り当てられたデータを切り替えると、すべてがブレーキをかける。 babelプラグインのようなものだと思いますか?

+0

[**フロー**](https://flow.org/)のJavaScriptです。 [** This **](https://pastebin.com/bKTq5TXQ)は、[** PropTypes **](https://facebook.github.io/react/docs/typechecking -with-proptypes.html)。 – Tholle

答えて

0

はい、そうです。

反応文書は通常、constructor() {}オブジェクトを介して状態を定義します。しかし、特定のプロジェクトでは、単にstate = {}で行うことができます。この簡略構文は、Babelの蒸散器Class properties transformのために可能です。