Redux를 배우려고합니다. 여기서 제가 잘못하고있는 것을 알고 싶습니다. 간단한 입력 필드가 있고 입력 필드에서 변경이 발생할 때마다 텍스트를 대문자로 만들려는 작업을 보내려합니다. 여기 내 돌아 오는 store
입니다 :Redux에서 입력 값 가져 오기
const TOCASE = (state="meow", action) => {
switch(action.type){
case 'UPPER':
return state.toUpperCase()
case 'LOWER':
return state.toLowerCase()
default:
return state
}
}
const {createStore} = Redux;
const store = createStore(TOCASE)
내 component
입니다 :
const Case = React.createClass({
render(){
return(
<div>
{this.props.text}
<input type="text" value={this.props.text} onChange={this.props.onUpper}/>
</div>
)
}
})
const render =() => ReactDOM.render(<Case
text={store.getState()}
onUpper={(e)=>store.dispatch(e.target.value,{type: 'UPPER'})}
/>, document.getElementById('app'))
render()
store.subscribe(render)
나는이 점에서 다소 혼란 스럽다. 내 컴포넌트에서 getInitialState와 setState를 사용한다면 입력 텍스트는 기본적으로 상태가 아닐 것입니다. 그러나 redux를 추가 할 때, 나는 감속기에서 action.data를 반환하고 상태는 아닙니다. –
당신이 말하는 것은 사실입니다. Redux는 반응하는 국가 작업과 마찬가지로 작동하는 거대한 주 관리자와 같습니다. 귀하의 예제는 redux 상태가 필요하지 않지만 redux를 사용하여 코드를 작성하는 방법을 배우려면 redux를 사용하여 수행해야합니다. 귀하의 모범을 학습 단계로 삼으십시오. 당신의 경우에 정말로 이것을 필요로한다면 많이 생각하지 마십시오. 코드가 어떻게 돌아가는지, 어떻게 redux가 작동하는지에 집중하십시오. 거대한 국가가 필요하면 이미 무장 할 것입니다. – FurkanO