You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Backstage Scaffolder输入字段验证:kebab case格式正则校验实现

在Backstage Scaffolder中实现Kebab Case格式的字段校验

Backstage Scaffolder基于react-jsonschema构建表单,直接利用JSON Schema的pattern关键字就能实现正则校验,完全可以在YAML模板里配置Kebab Case格式验证,具体步骤如下:

1. 确定Kebab Case的正则表达式

Kebab Case要求字符串仅包含小写字母和连字符,不能以连字符开头/结尾,也不能有连续连字符,对应的正则表达式为:

^[a-z]+(-[a-z]+)*$
  • ^[a-z]+:匹配开头至少一个小写字母
  • (-[a-z]+)*:匹配零个或多个"连字符+小写字母"组合
  • $:确保字符串结尾没有多余字符

2. 在YAML模板中配置校验

在scaffolder的template.yaml文件的parameters部分,为目标字段添加pattern规则,还可以通过errorMessage自定义错误提示,让用户更清楚格式要求。

示例代码:

parameters:
  - title: 基础配置
    properties:
      componentName:
        title: 组件名称
        type: string
        description: 请输入符合kebab-case格式的组件名称
        pattern: '^[a-z]+(-[a-z]+)*$'
        # 可选:自定义校验失败提示
        errorMessage:
          pattern: "组件名称格式错误,需符合kebab-case:仅小写字母,用单个连字符分隔,不能以连字符开头/结尾,无连续连字符"
    required:
      - componentName

3. 校验效果说明

当用户输入不符合格式的内容时(比如MyComponent、component_name、component--test、-component),表单会直接触发校验错误,阻止流程继续;输入符合要求的内容(比如user-profile、order-processing-service)则可以正常通过。

内容的提问来源于stack exchange,提问作者Paulo Eduardo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 17:46:01