diff --git a/Chapter1 - iOS/1.110.md b/Chapter1 - iOS/1.110.md index c734e76..a7ea339 100644 --- a/Chapter1 - iOS/1.110.md +++ b/Chapter1 - iOS/1.110.md @@ -256,6 +256,16 @@ let validateType = [OrderSubmitValidator generateTypeWithParams:params]; [OrderSubmitValidator validateWith:validateType]; ``` +`validateWith` 方法内部根据 validateType 去组装 Map 的 key,然后从 Map 中取出具体规则组合,然后依次迭代遍历执行 + +``` +let rulesMap = { + isVIP && isCharged : [a-b-c-d], + isVIP && !isCharged: [a-b-d-c], + !isVIP: [a-c-d-b], +} +``` + 优点: 1. 解决了现在的错误弹窗的隐含逻辑,后续人接手,弹窗优先级清晰可见,提高可维护性,减少出错概率