const someFailedAction = (caseIds, growlMessages) => {
if (caseIds.length > 1) {
toastr.error(growlMessages[0], errorToastrOptions);
} else if (isCaseDetailsDisplayed) {
toastr.error(growlMessages[1], errorToastrOptions);
} else if (errorParts.fieldIds.length === 0) {
toastr.error(growlMessages[2], errorToastrOptions);
} else {
toastr.error(growlMessages[3], errorToastrOptions);
}
}
私は、上記のような一連の条件文をさまざまなケースアクションの失敗で実行します。ほとんどのアクションは同じif/elseIf構造体を持ちますが、いくつかはelseIfを追加したり、1つ以上の減算をしたりします。型を渡したり、いくつかの条件文を実行したり、オブジェクトを返すための良いデザインパターンは何でしょうか?
const SomeOtherFailedAction = (caseIds, growlMessages) => {
if (caseIds.length > 1) {
toastr.error(growlMessages[0], errorToastrOptions);
} else if (isCaseDetailsDisplayed) {
toastr.error(growlMessages[1], errorToastrOptions);
} else {
toastr.error(growlMessages[2], errorToastrOptions);
}
}
私は長い間、ネストされた、繰り返しswitch文をせずに、メッセージの種類と配列で渡すことができますのための優れたデザインパターンがあった場合、私は思っていました。
をあなたの関数を呼び出す:' toastr.error(growlMessages [%インデックス%]、オプション)。 '' someFailedAction'の終わりに 'error'呼び出しを行うのは良くないでしょうが、' growlMessages'に 'index'を指定するそれぞれの条件で – Andy
' isCaseDetailsDisplayed'と 'errorParts'はどこから来たのですか? – Bergi