結合を使用した軽量ログインフォームバリデーター

May 09 2023
RxSwiftでログインフォームのバリデーターを実装する記事を書いたことがあるので、Apple Combineフレームワークを使って同じアイデアの記事を書くことにしました。ほとんどすべてのモバイル アプリにはログイン フォームが必要であり、ログイン プロセスを続行する前にユーザー資格情報を検証する必要があります。

RxSwiftでログインフォームのバリデーターを実装する記事を書いたことがあるので、Apple Combineフレームワークを使って同じアイデアの記事を書くことにしました。

RxSwift を使用した軽量ログインフォームバリデーター

ほとんどすべてのモバイル アプリにはログイン フォームが必要であり、ログイン プロセスを続行する前にユーザー資格情報を検証する必要があります。

簡単な方法でリアクティブバリデーターの実装を始めましょう。

まず、予想される検証エラーを処理するために、エラー列挙型をインポートCombineして定義しましょう。Foundation

次に、LoginFormValidatorクラスを作成してから、プライベートConstants列挙型とValidationType検証タイプ用の別の列挙型を追加しましょう。

validate2 つのパラメーターを持つ関数を作成しtexttypeクラス内で検証プロセスを管理し、成功または失敗の場合にAnyPublisher<Void, ValidationError>返す型を返します。VoidValidationError

次のステップは、メールとパスワードを検証するためのプライベート関数を作成することです。

プライベート関数を作成しvalidateEmailValidatePasswordコードをクリーンに保ちます。状態を管理して結果を返すために
使用し、ブロックの実装を待つためにここに追加しました。FutureDeferredFuture

LoginFormValidator最後に、クラスの使用法をリアルタイムで実装します。

これで、バリデーターを使用する準備が整いました。アプリの要件に応じて、さらに検証ケースを追加できます。
アイデアを簡単に説明できるように、シンプルに保つように努めました。

RxSwift次のストーリーを使用して、ログインフォームバリデーターの実装を見つけることができます。

RxSwift を使用した軽量ログインフォームバリデーター