2017-08-02 49 views
-2

假設我有一個表單X來呈現另外兩個組件,並且這些組件有很多子組件,直到現在沒關係,但是如果我有另一個表單Y,那麼它的大部分邏輯是與表單X相同,子表單中只有一些邏輯是Y表單的自定義,處理這種情況的最佳做法是什麼? 它是由jsx條件語句,通過傳遞一個道具來指示當前正在使用哪種形式? 或通過繼承組件併爲每個表單應用自定義邏輯?如何在反應中擴展表單組件

enter image description here 這裏的關係,如果我想創建一個面向對象的解決方案,但getFirstComponent方法,就會有很多的子組件,如果我想添加自定義邏輯最下部分或者我需要創建一個擴展新的組件類原始組件並重寫render方法來添加我的自定義邏輯,或者通過傳遞一個標誌來指示現在正在使用哪種表單並使用JSX條件來做出決定。

+0

你可以給一個[示例](https://stackoverflow.com/help/mcve)? –

+0

@TomDavies在問題中描述,如果不清楚會詳細說明更多 – M1M6

+0

是的,不太清楚你以後是什麼。如果你可以編輯這個問題來包含一個顯示X的結構和Y的結構的小例子,那麼我認爲它會有所幫助。 –

回答

0

我會建議讓X儘可能通用,這可以在任何地方使用。您可以將X分爲兩部分(X1和X2),其中第一部分應該是最常見的(可以在任何地方使用)。所以你可以使用X和X1中的X1和X2以及Y(= X1 +其他一些事物)中的一些附加(其他邏輯)。