# test-code **Repository Path**: yqingfeng/test-code ## Basic Information - **Project Name**: test-code - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-11-12 - **Last Updated**: 2021-11-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 前置说明 作为一个前端开发肯定不陌生各大框架中对于form的validator,那在不依赖框架的时候应该如何实现呢? 用户在提交数据的会提交他想对数据校验的N条规则如下 ```js const data = { data:'xxx', forms:[form-sas1012,form-sas1013] } ``` 这代表用户想要data符合forms中的规则,但是forms中的规则本身也是需要符合一定的规则 在题目中:1023 MUST be the ONLY form 代表1023这条规则只能单独提交如果用户提交如下的数据 ```js const data = { data:'xxx', forms:[form-sas1023,form-sas1013] } ``` 则应该抛出:1023 MUST be the ONLY form 又比如 1014 MUST include ONLY ONE 1012 代表1014这条规则必须和1012同时提交 再比如 1026 MUST be the ONLY form UNLESS a 1022 is include 代表1026这个规则可以单独提交,但是如果要和其他规则一起提交,那么只能和1022 # 题目:对用户提交的forms进行校验(而不是对data进行校验) 要求在src/request-validator.js中完成一个函数,此函数可以校验src/form-schemas下的表单规则达到如下的输出(需要编写test用例) ![输出结果](https://images.gitee.com/uploads/images/2021/1112/115221_7eeedd9c_5127161.png "屏幕截图.png") tips:可以在修改form-schemas中规则的定义,不应该使用大量if来判断