2月インターンシップログ(3)📝:React,tsコードコメント


2月のコードコメントを再確認!
多くの場合,arr?.length > 0 条件文はクエリ(JS)配列に有用である.
  • arrがnull、undefined、空の場合、すべてのフィルタ
  • コードコメント)
    const isLabelChanged: boolean =
        !!removal &&
        !!removal.inputLabel &&
        removal.inputLabel.length !== 0;
    
    const isLabelChanged: boolean = removal?.inputLabel?.length > 0;
    構成部品のpropがbooleanタイプの場合、prop名の表示値のみがtrueに渡されます.
    コードコメント)
    <Section title="댓글" isHighlighted={true} />
    <Section title="댓글" isHighlighted />
    JS注釈を残す良いところがJSDocであれば、注釈を残すこともできます
    コードコメント)
    /**
     * Return [borderColor, backgroundColor, color] according to selected, isPurchasable parameter
     *
     * @param {boolean} selected
     * @param {boolean} isPurchasable
     * @returns {string[]} 
     */
    const getColor = (selected: boolean, isPurchasable: boolean) => {
      // 중략
    }
    
    置換タイプ断言はタイプ変換(変換タイプ)に等しくありません!
    <ItemPrice {...(props as Omit<ItemPriceProps, 'size' | 'isSoldout'>)} />
    すなわち、propsでmitを使用してsizeとissoldoutを削除するタイプを指定しても、itemPriceはsizeとissoldoutをitemPriceに渡します!
    タイプアサーションは推定タイプにすぎず、実行時に意味がありません
    代替コンポーネントとは、jsxを返す/表示するモジュールです.
    すでに描かれているjsx、htmlはElementです!
    異なるバージョンのiosとandroidに基づいて異なる設定を行う場合にPlatformをインポート
    import { Platform } from 'react-native';
    
    // ...
    <KeyboardAvoidingView
    	behavior={Platform.OS === 'ios' ? 'padding' : 'height'}
    	keyboardVerticalOffset={Platform.OS === 'ios' ? 40 : 0} > 
      // ...
    
    </KeyboardAvoidingView>
    一読にたえる資料
    👉 今年捨てるべき10の悪い習慣