我正在使用redux根據值隱藏和顯示組件。Redux表單字段組件和驗證
了Redux形式文檔提到下列:
連接到多個字段應謹慎使用,因爲它會需要整個部件重新渲染每次任何它連接到改變字段。這可能是性能瓶頸。除非你絕對需要,否則你應該單獨連接到你的領域。
我不清楚,如果我的解決方案基於單選按鈕隱藏和顯示領域是好足夠使用Fields
給予警告,應謹慎使用。
您能否澄清我的組件是否有足夠的理由使用Fields
。如果沒有,那麼實施的另一種方法是什麼?
另外,fields
如何實現驗證?
<div>
<form>
<Fields
component={RadioButtonGroupField}
names={['radioButtonGroup', 'nameTextField', 'nickNameTextField']}
/>
</ form>
</div>
function RadioButtonGroupField(fields) {
return(
<div>
<RadioButtonGroupComponent
{...fields.radioButtonGroup.input}
{...fields.radioButtonGroup.meta}
/>
{
(fields.radioButtonGroup.input.value === 'name' ||
fields.radioButtonGroup.input.value === 'both') &&
<NameTextFieldComponent
{...fields.radioButtonGroup.input}
{...fields.radioButtonGroup.meta}
/>
}
{
(fields.radioButtonGroup.input.value === 'nickname' ||
fields.radioButtonGroup.input.value === 'both') &&
<NicknameTextFieldComponent
{...fields.radioButtonGroup.input}
{...fields.radioButtonGroup.meta}
/>
}
</div>
);
}
我怎麼會去使用領域實施驗證? – eNddy
這是個好問題@eNddy!我不確定到底是什麼意思來驗證'Fields'。我確信你已經注意到沒有驗證的論點。顯而易見的方法是隻使用syncValidation:http://redux-form.com/6.6.1/examples/syncValidation/ – dpwrussell
我認爲如果可能有類似的東西: ' '。 @dpwrussell你認爲這樣的事情有可能嗎?我似乎很高興不要污染全球異步驗證? –
eNddy