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

Flow中能否在内联类型声明中使用$ReadOnly工具类型?

Flow中$ReadOnly工具类型在私有原始类型属性上的使用问题

你遇到的报错核心原因:$ReadOnly工具类型仅支持对象、数组这类复合类型,string属于原始值类型,不符合它的参数要求,因此触发「not-an-object」错误。

针对你的场景,给出以下可行方案:

  • 对于string这类原始类型的私有属性,完全不需要用$ReadOnly修饰:原始值本身不可变,且#开头的私有字段已经限制了外部无法访问,若不在类内部重新赋值该字段,它自然处于只读状态。
  • 若需要在类型层面强制类内部也不能修改这个私有属性,可直接给私有字段添加readonly修饰符(该语法无需额外转译,多数现代环境及Flow配置均支持):
    class Tmp {
      readonly #myreadonlystring /*:string*/ = "Some string";
    }
    
  • 如果你受限于项目完全无法使用任何新语法,也可以通过类的实例类型注释间接约束,但这种方式不如readonly直接直观。

内容的提问来源于stack exchange,提问作者Olle Härstedt

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 19:16:01