我遇到了以下用js FlowType编写的代码(我很想知道在FlowType的上下文中+的值不是普通的JS)。
请您解释一下string json = "MyJson";
var temp = JArray.Parse(json);
temp.Descendants()
.OfType<JProperty>()
json = temp.ToString();
符号在下面的代码中在该属性前面的含义:
Node-1
Node-1-1
Node-1-1-1
我在文档中找不到任何参考,也欢迎任何链接。
答案 0 :(得分:33)
属性前面的+
符号表示该属性为只读
参考:https://flow.org/en/docs/types/interfaces/#toc-interface-property-variance-read-only-and-write-only
答案 1 :(得分:5)
' + '符号表示该属性只读和
' - '表示该属性只写,如果没有'+'或' - ' 符号表示该属性具有读/写访问权限。
可以在定义接口属性或类型属性时使用。
文档可在以下链接中找到:
https://flow.org/en/docs/types/interfaces/#toc-interface-property-variance-read-only-and-write-only
答案 2 :(得分:3)
经过一些额外的研究后,我发现+/-
表示属性的协变或逆变。
interface MyInterface {
+covariant: number; // read-only
-contravariant: number; // write-only
}
关于差异的有趣文章:
https://flow.org/en/docs/lang/variance/
https://flow.org/en/docs/types/interfaces/#toc-interface-property-variance-read-only-and-write-only