iT邦幫忙

2021 iThome 鐵人賽

DAY 12
0
自我挑戰組

日常任務成長紀錄系列 第 12

到底是什麼意思?Typescript Partial<Type>

今天在翻舊code的時候,看到了 Partial 的寫法,所幸來查查這到底是什麼意思.弄懂了之後看code也比較不會想睡,因為終於知道在什麼囉~

以下紀錄心得

  1. 什麼是 Partial ?

    簡單說Partial 幫你複製了一份 Type ,然後把裡頭的 property 設為 optional ,也就是可有可無

  2. 什麼時候適合使用 Partial ?

    當你在更新一筆紀錄的時候,假如有三個欄位,而你只想更新一個欄位,那麼你就可以使用 Partial 作為 req 的標示

    節錄官方文檔

    interface Todo {
      title: string;
      description: string;
    }
    
    function updateTodo(todo: Todo, fieldsToUpdate: Partial<Todo>) {
      return { ...todo, ...fieldsToUpdate };
    }
    
  3. 那假如我要欄位都必填呢?

    Required 是你的好選擇,他就是 Partial 的反面,建立一個 type ,其中屬性設為 required 必填

  4. 還有其他類似的 Utility Type 嗎?

    1. Readonly 不可對Object 內容重新指派
    2. Record<Keys,Type> 建立類似mapping 的 Type

上一篇
到底是什麼意思?static 靜態方法
下一篇
管理API 變化之API version
系列文
日常任務成長紀錄30

尚未有邦友留言

立即登入留言