Coder Social home page Coder Social logo

Comments (14)

xiaoymin avatar xiaoymin commented on June 5, 2024

参数配置require=true 就勾选了

from knife4j.

805728578 avatar 805728578 commented on June 5, 2024

@xiaoymin 在哪里配置,properties文件里面配吗?

from knife4j.

xiaoymin avatar xiaoymin commented on June 5, 2024

对于form请求,用OpenAPI3规范的注解,标注require

例如:

@Parameter(name = "id", description = "主键id", required = true, in = ParameterIn.QUERY)
@GetMapping("/getById")
public Result<List<String>> getById(@RequestParam(value = "id") Integer id) {
      //...
}

from knife4j.

805728578 avatar 805728578 commented on June 5, 2024

@xiaoymin 能否优化一下,默认勾选啊。如果参数特别多,配置太麻烦了

from knife4j.

xiaoymin avatar xiaoymin commented on June 5, 2024

@xiaoymin 能否优化一下,默认勾选啊。如果参数特别多,配置太麻烦了

ui解析是根据规范来的,如果required设置为true,默认就是勾选的,为false,就代表可传可不传。不勾选是合理的

from knife4j.

805728578 avatar 805728578 commented on June 5, 2024

image

image

from knife4j.

805728578 avatar 805728578 commented on June 5, 2024

@xiaoymin 实际上我是以对象方式呈现的,而且原生/swagger-ui/index.html是支持的

from knife4j.

xiaoymin avatar xiaoymin commented on June 5, 2024

@805728578

@Schema注解,有设置requiredMode属性的

from knife4j.

805728578 avatar 805728578 commented on June 5, 2024

@xiaoymin 感觉和这个勾选含义和requiredMode含义不同,勾选是为了表达向后端传递不传递这个参数,requiredMode是为了表达是否必须包含内容片段

举个例子:后端需要接收字段参数其值可以为null,和后端接收不到参数是两个概念

from knife4j.

xiaoymin avatar xiaoymin commented on June 5, 2024

@xiaoymin 感觉和这个勾选含义和requiredMode含义不同,勾选是为了表达向后端传递不传递这个参数,requiredMode是为了表达是否必须包含内容片段

举个例子:后端需要接收字段参数其值可以为null,和后端接收不到参数是两个概念

前端组件交互没有null和空字符的概念,如果body不含参数,就是null,勾选了,传递一个空字符串,也是有值的

默认全部勾选,然后传递一个空字符串过去,后端JSR303验证就会不通过。所以这里和require这个属性绑定,我觉得还是合理的

from knife4j.

805728578 avatar 805728578 commented on June 5, 2024

@xiaoymin 就是操作起来比较繁琐,如果【参数】是非必须字段,【参数值】填完之后还要打勾才能提交给后端

同一套代码,使用原生/swagger-ui/index.html和/doc.html操作完全不一致。

个人觉得【参数】前面的复选框都可以去掉,保持【参数值】对应文本框或下拉框和requiredMode配置保持一致

from knife4j.

xiaoymin avatar xiaoymin commented on June 5, 2024

@805728578 非必填字段没有你说的填完之后还要打勾这个操作吧

如果是非必填,但是在输入框输入的时候,就会默认打勾了

https://doc.xiaominfo.com/demo/doc.html#/Knife4j%E7%A4%BA%E4%BE%8B/%E7%94%A8%E6%88%B7%E6%A8%A1%E5%9D%97/createOne1

from knife4j.

805728578 avatar 805728578 commented on June 5, 2024

image
image

@xiaoymin 针对以上情况,有默认样例值就要打勾

from knife4j.

805728578 avatar 805728578 commented on June 5, 2024

@805728578 非必填字段没有你说的填完之后还要打勾这个操作吧

如果是非必填,但是在输入框输入的时候,就会默认打勾了

https://doc.xiaominfo.com/demo/doc.html#/Knife4j%E7%A4%BA%E4%BE%8B/%E7%94%A8%E6%88%B7%E6%A8%A1%E5%9D%97/createOne1

@xiaoymin 针对没有默认值的确实输入时就勾选了,针对有默认值的需要二次勾选

from knife4j.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.