reactNativeプラットフォーム間app開発経験共有-Reduxの使用心得
2473 ワード
Author:Mr.柳上原いかなる努力にも劣らない努力を払う 私たちのすべての努力が、生活に裏切られないことを願っています. 初心を忘れないで、ずっと を得なければなりません.
RNでのプロジェクトの実際の開発時のReduxグローバルパラメータの具体的な使用方法Reduxの利点:いくつかのグローバルで使用する必要があるパラメータを保存することができて、しかも1つのコンポーネントの中でこのパラメータを更新した後、グローバルの中でこのパラメータを使用する場所はすべてリアルタイムでショッピングカートに適用することができて、アイコンの右上の数字、formフォームのデータ辞書の配置、権限の配置、リアルタイムメッセージ数など
クライアントページ
constantsページ
アクションページ
具体的なコンポーネントの中でReduxが保存したパラメータを呼び出します
RNでのプロジェクトの実際の開発時のReduxグローバルパラメータの具体的な使用方法Reduxの利点:いくつかのグローバルで使用する必要があるパラメータを保存することができて、しかも1つのコンポーネントの中でこのパラメータを更新した後、グローバルの中でこのパラメータを使用する場所はすべてリアルタイムでショッピングカートに適用することができて、アイコンの右上の数字、formフォームのデータ辞書の配置、権限の配置、リアルタイムメッセージ数など
クライアントページ
// redux-actions
import { handleActions } from 'redux-actions'
import * as actionTypes from '../constants' // actionTypes
const initState = {
a: {},
b: 0,
c: [],
... //
}
const map = {}
map[actionTypes.SEARCH_GET_PURCH_LIST] = (state, action) => {
let value = action.payload.values
return Object.assign({}, state, {b: value})
}
map[actionTypes.SEARCH_GET_REALESTATE_LIST] = (state, action) => {
let value = state.c.concat([{
name: action.payload.name,
id: action.payload.number === ' ' ? null : action.payload.shop.id,
}])
return Object.assign({}, state, {c: value})
}
constantsページ
// actionTypes
export const SEARCH_GET_PURCH_LIST = "SEARCH_GET_PURCH_LIST";
export const SEARCH_GET_REALESTATE_LIST = "SEARCH_GET_REALESTATE_LIST";
...
...
アクションページ
// redux-actions
import {createAction} from 'redux-actions';
import * as actionTypes from '../constants';
export const getPurchListForm = createAction(actionTypes.SEARCH_GET_PURCH_LIST)
export const getRealEstateForm = createAction(actionTypes.SEARCH_GET_REALESTATE_LIST)
具体的なコンポーネントの中でReduxが保存したパラメータを呼び出します
//
import React, {Component} from 'react'
import {connect} from 'react-redux'
import { store } from '../index';
class RealEstate extends Component {
.....
this.props.a //
this.props.b //
this.props.c //
// Redux
this.props.dispatch(getPurchListForm(this.props.b - 1)) //
/**export const store = configure({})
global.store = store*/ // index store
store.dispatch(getPurchListForm(this.props.b - 1)) //
}
const mapStateToProps = (state, props) => {
return {
a: state.client.a
b: state.client.b
c: state.client.c
}
}
const mapDispatchToProps = (dispatch) => {
return {
deleteRealEstate: (...args) => dispatch(deleteRealEstate(...args)),
dispatch
}
}
export default connect(mapStateToProps, mapDispatchToProps)(RealEstate)