1.如图所示,当然发票发票所在单号的输入框太短了,请忽略。我输入了这么些单号:FPP-P-210701-00001201,FPP-P-210701-00001302,FPP-P-210701-00001302,FPP-P-210701-00001302,FPP-P-210701-00001304,FPP-P-210701-00001305,FPP-P-210701-00001305,FPP-P-210701-00001305,FPP-P-210701-00001305,FPP-P-210701-00001204
2.解答思路
2.1首先限制10单,数据长度为10,为临界点
2.2数组长度为10的话,就得以逗号分割(我们需求是以逗号分割)
2.3既然以逗号分割的话,如果是英文逗号的话,数组长度就会变成1。那么要将输入的英文逗号变成中文逗号,需要用到正则
2.4以上满足后,首先查找出数组中重复的单号,注意:如果有3个或以上单号重复的时候,就会得到多个重复的单号,所以这里需要去重单号。
3.解决代码如下
我这里是在提交阶段进行验证得,如果在输入阶段进行验证的话,最后依旧可以提交
//发票所在单号最多上传10单
if (this.createUnfinished.processDTO.invoice.shardPaymentNos) {
// 输入的英文逗号进行全局匹配