Archive
enumToOptions

enumToOptions

enum 타입으로 선언한 변수를 SelectRadio 컴포넌트에서 목록으로 뿌릴 수 있도록 배열로 변경하는 함수입니다.

Steps

Copy Code

services/utils/index.ts
export const enumToOptions = (enumObj: any) =>
  Object.entries<string>(enumObj).map(([value, name]) => ({ value, name }))

Usage

import { enumToOptions } from 'services'
 
enum ProgrammingLanguage {
  'Javascript' = '자바스크립트',
  'Typescript' = '타입스크립트',
  'Python' = '파이썬',
  'Node.js' = '노드js'
}
 
// Select
<select>
  <option value="">전체</option>
  {enumToOptions(ProgrammingLanguage).map((option, key) => (
    <option key={key} value={option.value}>
      {option.name}
    </option>
  ))}
</select>
 
// Radio
<div>
    {enumToOptions(ProgrammingLanguage).map((option, key) => (
        <label key={key}>
            <input type="radio" name={option.name} value={option.value} />
        </label>
    ))}
</div>

© 2023 kidow. All rights reserved.
안녕하세요?