μ λ€λ¦(Generic)μ΄λ?Cλ μλ° κ°μ μ μ μΈμ΄μμ λ€μν νμ
κ°μ μ¬μ¬μ©μ±μ λμ΄κΈ° μν΄ μ¬μ©νλ λ¬Έλ²μ΄λ€. νμ
μ€ν¬λ¦½νΈλ μ μ νμ
μ κ°μ§λ―λ‘ μ λ€λ¦ λ¬Έλ²μ μ§μνλ€.μ λ€λ¦μ μ¬μ μ μλ―Έλ μΌλ°μ μΈ κ²(general)μ λ»νλλ°, νμ
μ€ν¬λ¦½νΈμ μ λ€λ¦λ μ΄μ λΉμ·νκ² 'μΌλ°νλ λ°μ΄ν°' νμ
μ΄λΌ λ³Ό μ μλ€.μ λ€λ¦: ν¨μ, νμ
, ν΄λμ€ λ±μμ λ΄λΆμ μΌλ‘ μ¬μ©ν νμ
μ 미리 μ ν΄λμ§ μκ³ νμ
λ³μλ₯Ό μ¬μ©ν΄μ ν΄λΉ μμΉλ₯Ό λΉμ λ λ€μμ, μ€μ λ‘ κ·Έ κ°μ μ¬μ©ν λ μΈλΆμμ νμ
λ³μ μ리μ νμ
μ μ§μ νμ¬ μ¬μ©νλ λ°©μ-> μ΄λ κ² νλ©΄ ν¨μ, νμ
, ν΄λμ€ λ± μ¬λ¬ νμ
μ λν΄ νλνλ λ°λ‘ μ μνμ§ μμλ λκΈ° λλ¬Έμ μ¬μ¬μ©μ±μ΄ ν¬κ² ν₯μλλ€.νμ
λ³μλ μΌλ°μ μΌλ‘ μ κ°μ΄ κΊΎμ κ΄νΈ λ΄λΆμ..
TypeScript
μ€λ λ μ§, νμ¬ μκ° κ°μ Έμ€κΈ° const getDefaultDate = () => { const today = new Date(); const year = today.getFullYear(); const month = (today.getMonth() + 1).toString().padStart(2, '0'); const day = today.getDate().toString().padStart(2, '0'); const hours = today.getHours().toString().padStart(2, '0'); const minutes = today.getMinutes().toString().padStart(2, '0'); const seconds = today.getSeconds().toStrin..
interface IDownloadExcelParams { responseType?: ResponseType; } const fileAPI = { downloadExcel: (params: IDownloadExcelParams) => { return JSON.get(`file/excel`, params); }, } API μ μ λΆλΆ const [isDownloading, setIsDownloading] = useState(false); const downloadTemplate = async () => { try { setIsDownloading(true); const response = await fileAPI.downloadExcel({ responseType: 'blob', }); if (respon..
1. ν€(Key)μ νλ‘νΌν°(Property) κ°μ²΄(Object)λ μ¬λ¬ κ°μ λ°μ΄ν°λ₯Ό νλλ‘ λ¬Άμ΄ νννλ λ°μ΄ν° ꡬ쑰μ΄λ€. κ°μ²΄ μμ κ° λ°μ΄ν° μμλ₯Ό νλ‘νΌν°λΌκ³ λΆλ₯΄λ©°, νλ‘νΌν°λ μ΄λ¦(ν€)κ³Ό κ°μΌλ‘ ꡬμ±λλ€. const person = { name: 'Alice', age: 30, job: 'Engineer' }; name, age, jobμ keyμ΄κ³ Alice, 30, Engineerμ νλ‘νΌν°μ κ°μ΄λΌκ³ λΆλ₯Έλ€. 2. νμ
(Type) νμ
μ λ³μ, 맀κ°λ³μ, ν¨μ λ±μ μ΄λ€ μ’
λ₯μ κ°μ΄λ λ°μ΄ν°κ° λ€μ΄κ° μ μλμ§λ₯Ό λͺ
μνλ μν μ νλ€. TypeScriptμμλ νμ
μ μ¬μ©νμ¬ λ³μλ ν¨μμ μΈμ λ±μ κ°μ΄ μ΄λ€ ννλ₯Ό κ°μ ΈμΌ νλμ§λ₯Ό λͺ
ννκ² μ§μ ν μ μμ΅λλ€. const age: n..
TypeScript μμ λ³μκ° string ννμ¬μΌ νλλ° undefinedμΌ λ λ°μνλ νμ
μλ¬λ‘, ννκ² λ°μνλ€. κ°μ₯ κ°λ¨ν ν΄κ²°μ±
μ, κ°μ΄ undefinedμΌ κ²½μ° λΉ λ¬Έμμ΄μΈ ''μ ν λΉν΄μ£Όλ κ²μ΄λ€. μλλ κ·Έ μμμ΄λ€. const userName: string = userDetails?.userName || '';
λ€μ μ½λμ λ¬Έμ κ° λ¬΄μμΌκΉ? {relData?.totalElements > 1 && ( handleChangeRepPopup(!showChangeRepPop)} style={{ marginRight: '10px' }} > {t('button.filecomponent.changeRep')} )} → 'relData.totalElements' is possibly 'undefined'. μ½μμ μ΄λ° μ€λ₯κ° μΆλ ₯ λλ€. λ§ κ·Έλλ‘, relData.totalElements κ° undefined μΌ μ μκΈ° λλ¬Έμ΄ μ΄λ° μ€λ₯κ° λλ κ²μ΄λ€. κ°μ₯ κ°λ¨ν ν΄κ²°λ°©λ²μ relData && relData.totalElements > 1 && ( μ΄λ κ² μ‘°κ±΄λΆ λ λλ§μ μ΄μ©νλ κ²μ΄λ€. relDataκ° μ‘΄μ¬ν λλ§ λ€μ..