親愛なる同僚の皆さん、React xstoreアプリケーションの状態を管理するためのコンテナーに注意を向けて非難します。 大きくてキラキラ輝くReduxバイクの隣にあるのは、間違いなくこのような小さな子供用バイクです。 私たちJavaScriptプログラマーは皆、とても大きくてペースの遅い自転車製造工場です。
多かれ少なかれ初心者でも初心者でも、React JavaScript Reduxプログラマーとの知り合いは少し複雑に見えるかもしれません。
よく見てみましょう。
設置
npm install
使用する
最初に、リポジトリに「ハンドラ」を追加する必要があります。
(ハンドラーの例を下のブロックに示します)
index.js
import React from 'react' import ReactDOM from 'react-dom' import Store from 'xstore' import App from './components/App' import user from './store_handlers/user' import dictionary from './store_handlers/dictionary'
以下は、「ユーザー」ハンドラーの例です。
ユーザーリポジトリの初期状態を判断するために必要なリデューサーの初期化が含まれています。
./store_handlers/user.js
import axios from 'axios' const DEFAULT_STATE = { name: 'user', status: 'alive' }
以下は、コンポーネントをリポジトリに接続する方法の例です。
./components/ComponentToConnect/index.js
import React from 'react' import Store from 'xstore' class ComponentToConnect extends React.Component { render() {
接続に使用可能なparamsオプション:
{
パブリックリポジトリメソッドのリスト:
import Store from 'xstore'
そして、それがどのように機能するかについて:
「connect」メソッドは、新しいHOCクラスXStoreConnectを作成します。これは、コンポーネントとストレージの相互作用のすべてのロジックを隠します。 このクラスはストレージの変更にサブスクライブし、そこで何らかの変更が発生すると、外部呼び出しから保護されたsetStateメソッドを呼び出し(たとえば、this.refs.xStoreConnect.setState(...)を介して)、その後、このコンポーネントが再描画され、それによって更新されますラップされたコンポーネントの小道具。
ラッパーコンポーネントの状態を直接変更するthis.refs.xStoreConnect.state =何も何も起こらない場合、このクラスは埋め込みデータを見つけて削除できます。
コマンドラインからハンドラーファイルを生成する:
npm install -g xstore xstore create-handler filename
「package.json」の「scripts」で記述することもできます。
{ scripts: { "create-handler": "node node_modules/xstore/bin/exec.js" } } npm run create-handler filename
このコマンドは、ハンドラーのテンプレートコードを使用してfilename.jsファイル(存在しない場合)を作成します。
それだけです、簡単ですよね? これでキックできます。 親愛なる同僚のアドバイスと合理的な批判を喜んでいます。