Azure DevOps Custom Rule复制字段值报Html类型无效错误求解
报错根因
多行(Multi-Line)字段存储的是带HTML标签的富文本内容,单行(Single-Line)文本字段仅接受纯文本格式输入。直接把Goal字段的原始值赋值给Short Goal字段时,传入的是Html类型值,不符合单行字段的类型校验规则,因此触发报错。
可行解决方案
- 在自定义规则中增加格式转换步骤
不要直接引用Goal字段的原始值赋值,先把富文本内容转成纯文本再传入Short Goal字段:- 优先使用所用平台内置的富文本转纯文本函数,常见写法为
toPlainText([Goal])、stripHtml([Goal]) - 如果平台没有内置转换函数,可以用正则替换移除所有HTML标签,参考逻辑:
replace([Goal], /<[^>]*>/g, '')
转换完成后记得额外移除内容里的换行符、多余连续空格,适配单行字段不能存储换行的要求。
- 优先使用所用平台内置的富文本转纯文本函数,常见写法为
- 调整字段类型做匹配
如果需要保留Goal字段的换行、文本格式,直接把Short Goal字段的类型从单行文本改成多行文本,两个字段类型一致后即可直接赋值,不会触发类型校验错误。 - 增加截断逻辑适配短文本需求
如果Short Goal是用于存储Goal的摘要内容,提取纯文本后可以增加截断逻辑,比如取Goal纯文本的前50/100个字符再赋值,符合单行短文本的长度限制要求。
内容的提问来源于stack exchange,提问作者Prachi Ojha
相关产品推荐
相关产品推荐

