我正在尝试创建一个具有可选、可为空的字符串值的模型。 我试过同时使用两者
hint: types.optional(types.string, ""),
和
hint: types.maybe(types.string),
当我尝试为该对象设置 json 对象时,两者都会导致错误。 如果我手动循环遍历 json 对象并将空内容设置为空字符串",则可以工作。
在路径"内容"值处转换"jsoncontent"时出错
null
不可分配给类型:string
(值不是字符串(。
您可以使用types.maybeNull
来拥有也可以null
的类型。
hint: types.maybeNull(types.string)
可以使用以下解决方案之一在 Mobx 状态树中具有可为 null 的字符串值:
types.maybeNull(types.string) // value can be null
或
types.optional(types.string, '') // should create empty string if value is not defined
我创建了一个帮助程序函数,允许您同时拥有可选和可为空的类型。
function nullOrUndefined<T extends IAnyType>(type: T) {
return types.maybe(types.maybeNull(type));
}