[javascript] Redux 액션(Action)의 역할은?

Redux는 JavaScript 애플리케이션의 상태 관리를 위한 예측 가능하고 일관된 방법을 제공하는 도구입니다. Redux는 액션, 리듀서, 스토어 등의 개념을 사용하여 상태 관리를 처리합니다. 액션은 Redux에서 가장 중요한 개념 중 하나입니다.

액션은 어떤 일이 일어나야 한다는 사실을 설명하는 객체입니다. 이것은 애플리케이션에서 발생하는 사건 또는 사용자의 입력을 나타내는 것입니다. 예를 들면, “사용자가 로그인을 시도했다” 또는 “새로운 아이템을 추가했다”와 같은 내용의 액션 객체를 생성할 수 있습니다.

액션은 일반적으로 Redux 액션 생성자 함수를 통해 생성됩니다. 이 함수들은 액션 객체를 반환하며, 필요한 데이터를 포함할 수 있습니다. 예를 들어, 다음은 로그인 액션 생성자 함수의 예입니다.

function login(username, password) {
  return {
    type: 'LOGIN',
    payload: {
      username,
      password
    }
  };
}

액션 객체는 type이라는 필수 속성을 가지고 있습니다. 이는 액션의 종류를 식별하는 데 사용됩니다. 액션 객체의 내용은 개발자가 자유롭게 정의할 수 있습니다. 일반적으로 payload라는 속성을 사용하여 추가 데이터를 전달합니다.

액션은 Redux의 핵심 개념 중 하나이며, 리듀서에서 상태를 업데이트하는 데 사용됩니다. 스토어에서 디스패치(dispatch) 함수를 사용하여 액션을 보내고, 리듀서에서 해당 액션에 대한 상태 변경을 수행합니다. 이를 통해 예측 가능한 상태 변화를 구현할 수 있습니다.

참고 자료: