sumakokima2 / resium-sample2

0 stars 0 forks source link

コンポーネント1 #2

Open sumakokima2 opened 5 years ago

sumakokima2 commented 5 years ago

親コンポーネント

import React from "react";
import ReactDOM from "react-dom";

import App from "./app";

ReactDOM.render(<App />, document.getElementById("root"));

子コンポーネント

import React from 'react';
import ReactDOM from 'react-dom';

// connect するコンポーネントが必要としている Dispatch を受け取る Props の型
通常はtypes.d.tsで設定するが、今回うまくできなかったのでここで設定

interface Data {
    id: string;
    name: string;
    show: boolean;
  }
// connect するコンポーネントが必要としている Dispatch を受け取る Props の型。
interface Props {
    pins: Data[];
  }
// そのコンポーネントが持っている状態
  interface State {
    pinsshow: boolean[];
    pinsboolean:boolean;
  }

// Reactコンポーネントクラス「App」を宣言
export default class App extends React.Component<Props, State> { 

//constructor内でpropsを受け取ってpropsとstateを初期化する処理を行う
  constructor(props) {                                  
    super(props);     //propsの受け取り
 //stateを使うときにconstructorが必須になる        
    this.state = {pinsboolean : true, pinsshow: []};      
  }
 render() {
    return (
      <div>
        <h1>Hello, {this.props.pinsboolean}!</h1> // 無理やりですが。。。
      </div>
    );
  }
}

React における State と Props の違い