鈍足ランナーのIT日記

走るのが好きな5流のITエンジニアのブログ。

趣味の範囲は広いけど、どれも中途半端なクソブロガー楽しめるWebアプリを作ってあっと言わせたい。サーバーサイドPerl(Mojolicious)、クライアントサイドVue.js。Arduinoにも触手を伸ばす予定。

material-fluxのexampleを読んでみる

頭が混乱しているので、シンプルなflux実装(material-fluxのexampleをコードリーディング)

github.com


fluxを使うときに、親や子達のコンポーネントからaction,storeにアクセス
できるように、ばら撒く必要があってまぁ、コンポーネントの一番親に
設定してあとは、子供にはpropで渡すというのがシンプルですね。
この例だとcontextという形にして渡している。

app.js

var context = new UserContext();
React.render(
    React.createElement(App, {context}),
    document.body
);

// React.createElementの2番目の引数はプロパティの設定ということは、こう書き換えられる?

var context = new UserContext();
React.render(
    <App context={context}>,
    document.body
);

Components/AppComponent.js

onClick(event) {
        var { context } = this.props;
        context.userAction.doSomething("clicked");
    }

// this.props.context.userAction.doSomething("clicked");と呼ばないのはなぜだろう。
// そもそも、var {context} = this.props;はいったい意味だろう。

オブジェクト初期化省略記法
橋本商会 » ES6の勉強をした