实现思路:

  1. 每次输入完就触发请求查询数据库:有-->返回true 无-->返回false
  2. 页面根据boolean判断显示内容

绕点:

  1. 由于每次输入完都会触发请求,因此为修改时,假如供应商名字做了修改,比如a-->b,我还没提交,但是我又感觉a合适,于是我又b--a,那就回导致也会触发请求,由于这是修改页面那么数据库自然有该条数据,就会导致触发重复提示,校验不通过。

解决思路:如果页面为修改,记录下供应商名字,在触发请求时候判断是否一样,一样不触发

注意点:

  1. 记录名字时,只能记录最开始那一次(代表了修改时传递过来的值),后续更改都不做记录,才能保证该目的

代码逻辑:

技术点:

  1. 通过isOriginalVendorrNameSet标志位保证只允许一次赋值成功
  2. 通过form.value.id区分是新增还是修改
  3. 其他就是规则校验发送请求,checkVendorNameDuplicate为封装的api,对应后端接口只是查个数据库,这里不做显示

效果:

Logo

快速构建 Web 应用程序

更多推荐