เครื่องมือตรวจสอบแบบฟอร์มการเข้าสู่ระบบที่มีน้ำหนักเบาโดยใช้ Combine

May 09 2023
เนื่องจากฉันได้เขียนบทความเกี่ยวกับการติดตั้งตัวตรวจสอบความถูกต้องสำหรับแบบฟอร์มการเข้าสู่ระบบใน RxSwift ฉันจึงตัดสินใจเขียนบทความหนึ่งสำหรับแนวคิดเดียวกันโดยใช้เฟรมเวิร์ก Apple Combine แอพมือถือเกือบทั้งหมดต้องใช้แบบฟอร์มการเข้าสู่ระบบ และคุณต้องตรวจสอบความถูกต้องของข้อมูลรับรองผู้ใช้ก่อนที่จะดำเนินการตามขั้นตอนการเข้าสู่ระบบ

เนื่องจากฉันได้เขียนบทความเกี่ยวกับการติดตั้งตัวตรวจสอบความถูกต้องสำหรับแบบฟอร์มการเข้าสู่ระบบใน RxSwift ฉันจึงตัดสินใจเขียนบทความหนึ่งสำหรับแนวคิดเดียวกันโดยใช้เฟรมเวิร์ก Apple Combine

เครื่องมือตรวจสอบแบบฟอร์มการเข้าสู่ระบบที่มีน้ำหนักเบาโดยใช้ RxSwift

แอพมือถือเกือบทั้งหมดต้องใช้แบบฟอร์มการเข้าสู่ระบบ และคุณต้องตรวจสอบความถูกต้องของข้อมูลรับรองผู้ใช้ก่อนที่จะดำเนินการตามขั้นตอนการเข้าสู่ระบบ

มาเริ่มใช้งานตัวตรวจสอบปฏิกิริยาของเราด้วยวิธีง่ายๆ

ก่อนอื่น มานำเข้าCombineและFoundationกำหนดข้อผิดพลาดของเรา enum เพื่อจัดการกับข้อผิดพลาดในการตรวจสอบที่คาดไว้:

ประการที่สอง มาสร้างLoginFormValidatorคลาส จากนั้นเพิ่มConstantsenum ส่วนตัวและ enum อื่นValidationTypeสำหรับประเภทการตรวจสอบความถูกต้อง

เราได้สร้างvalidateฟังก์ชั่นที่มี 2 พารามิเตอร์textและtypeจะจัดการกระบวนการตรวจสอบความถูกต้องภายในคลาสและส่งคืนประเภทAnyPublisher<Void, ValidationError>to return Voidในกรณีที่สำเร็จหรือValidationErrorล้มเหลว

ขั้นตอนต่อไปคือการสร้างฟังก์ชันส่วนตัวเพื่อตรวจสอบอีเมลและรหัสผ่าน

เราได้สร้างฟังก์ชั่นส่วนตัวvalidateEmailและValidatePasswordเพื่อให้โค้ดของเราสะอาด
เราใช้Futureในการจัดการสถานะและส่งคืนผลลัพธ์ และเราเพิ่มDeferredที่นี่เพื่อรอการดำเนินFutureการบล็อก

สุดท้ายนี้ เราจะดำเนินการใช้งานLoginFormValidatorคลาสแบบเรียลไทม์

ขณะนี้ตัวตรวจสอบความถูกต้องของเราพร้อมใช้งานแล้ว และคุณสามารถเพิ่มกรณีการตรวจสอบความถูกต้องเพิ่มเติมได้ ทั้งนี้ขึ้นอยู่กับข้อกำหนดของแอปของคุณ
ฉันพยายามทำให้ง่ายเพื่ออธิบายแนวคิดง่ายๆ และคุณจะชินกับมัน

คุณสามารถค้นหาการใช้งานตัวตรวจสอบแบบฟอร์มการเข้าสู่ระบบโดยใช้RxSwiftเรื่องราวต่อไปนี้

เครื่องมือตรวจสอบแบบฟอร์มการเข้าสู่ระบบที่มีน้ำหนักเบาโดยใช้ RxSwift