docs/api/slate/path.cn.mdx
Path 是一个索引列表,用于描述节点在 Plate 节点树中的确切位置。虽然它们通常是相对于根 Editor 对象的,但也可以相对于任何 Node 对象。
type Path = number[];
PathApioperationCanTransformPath检查操作是否会影响路径(在规范化过程中用作脏路径更新的优化)。
<API name="operationCanTransformPath"> <APIParameters> <APIItem name="operation" type="Operation<N>"> 要检查的操作。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果操作是插入、合并、移动、删除或拆分操作,则返回 `true`。 </APIReturns> </API>transform通过操作转换路径。
<API name="transform"> <APIParameters> <APIItem name="path" type="Path"> 要转换的路径。 </APIItem> <APIItem name="operation" type="Operation"> 要应用的操作。 </APIItem> <APIItem name="options" type="PathTransformOptions" optional> 路径转换的选项。 </APIItem> </APIParameters> <APIOptions type="PathTransformOptions"> <APIItem name="affinity" type="TextDirection | null" optional> 转换的亲和性。 </APIItem> </APIOptions> <APIReturns type="Path | null"> 转换后的路径,如果路径被删除则返回 `null`。 </APIReturns> </API>ancestors获取给定路径的所有祖先路径列表。
<API name="ancestors"> <APIParameters> <APIItem name="path" type="Path"> 要获取祖先的路径。 </APIItem> <APIItem name="options" type="PathAncestorsOptions" optional> 获取祖先的选项。 </APIItem> </APIParameters> <APIOptions type="PathAncestorsOptions"> <APIItem name="reverse" type="boolean" optional> 如果为 true,则按反向顺序返回路径(从最深到最浅)。 </APIItem> </APIOptions> <APIReturns type="Path[]"> 从最浅到最深的祖先路径数组(除非反向)。 </APIReturns> </API>child获取指定索引的子节点路径。
<API name="child"> <APIParameters> <APIItem name="path" type="Path"> 父路径。 </APIItem> <APIItem name="index" type="number"> 子节点索引。 </APIItem> </APIParameters> <APIReturns type="Path"> 子节点的路径。 </APIReturns> </API>common获取两个路径的共同祖先路径。
<API name="common"> <APIParameters> <APIItem name="path" type="Path"> 第一个路径。 </APIItem> <APIItem name="another" type="Path"> 第二个路径。 </APIItem> </APIParameters> <APIReturns type="Path"> 共同祖先路径。 </APIReturns> </API>compare比较两个路径,返回一个整数表示路径是在另一个之前、相同还是之后。
<API name="compare"> <APIParameters> <APIItem name="path" type="Path"> 要比较的第一个路径。 </APIItem> <APIItem name="another" type="Path"> 要比较的第二个路径。 </APIItem> </APIParameters> <APIReturns type="-1 | 0 | 1"> 如果在之前返回 `-1`,相同位置返回 `0`,之后返回 `1`。 </APIReturns> </API>endsAfter检查路径是否在另一个路径的某个索引之后结束。
<API name="endsAfter"> <APIParameters> <APIItem name="path" type="Path"> 要检查的路径。 </APIItem> <APIItem name="another" type="Path"> 要比较的路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果 `path` 在 `another` 之后结束返回 `true`。 </APIReturns> </API>endsAt检查路径是否在另一个路径的某个索引处结束。
<API name="endsAt"> <APIParameters> <APIItem name="path" type="Path"> 要检查的路径。 </APIItem> <APIItem name="another" type="Path"> 要比较的路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果 `path` 在 `another` 相同索引处结束返回 `true`。 </APIReturns> </API>endsBefore检查路径是否在另一个路径的某个索引之前结束。
<API name="endsBefore"> <APIParameters> <APIItem name="path" type="Path"> 要检查的路径。 </APIItem> <APIItem name="another" type="Path"> 要比较的路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果 `path` 在 `another` 之前结束返回 `true`。 </APIReturns> </API>equals检查路径是否与另一个完全相等。
<API name="equals"> <APIParameters> <APIItem name="path" type="Path"> 第一个路径。 </APIItem> <APIItem name="another" type="Path"> 第二个路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果路径完全相等返回 `true`。 </APIReturns> </API>firstChild获取路径的第一个子节点路径。
<API name="firstChild"> <APIParameters> <APIItem name="path" type="Path"> 父路径。 </APIItem> </APIParameters> <APIReturns type="Path"> 第一个子节点的路径。 </APIReturns> </API>hasPrevious检查前一个兄弟节点的路径是否存在。
<API name="hasPrevious"> <APIParameters> <APIItem name="path" type="Path"> 要检查的路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果存在前一个兄弟节点返回 `true`。 </APIReturns> </API>isAfter检查路径是否在另一个之后。
<API name="isAfter"> <APIParameters> <APIItem name="path" type="Path"> 要检查的路径。 </APIItem> <APIItem name="another" type="Path"> 要比较的路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果第一个路径在第二个之后返回 `true`。 </APIReturns> </API>isAncestor检查路径是否是另一个的祖先。
<API name="isAncestor"> <APIParameters> <APIItem name="path" type="Path"> 可能的祖先路径。 </APIItem> <APIItem name="another" type="Path"> 可能的子孙路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果 `path` 是 `another` 的祖先返回 `true`。 </APIReturns> </API>isBefore检查路径是否在另一个之前。
<API name="isBefore"> <APIParameters> <APIItem name="path" type="Path"> 要检查的路径。 </APIItem> <APIItem name="another" type="Path"> 要比较的路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果第一个路径在第二个之前返回 `true`。 </APIReturns> </API>isChild检查路径是否是另一个的子路径。
<API name="isChild"> <APIParameters> <APIItem name="path" type="Path"> 可能的子路径。 </APIItem> <APIItem name="another" type="Path"> 可能的父路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果 `path` 是 `another` 的子路径返回 `true`。 </APIReturns> </API>isCommon检查路径是否等于或是另一个的祖先。
<API name="isCommon"> <APIParameters> <APIItem name="path" type="Path"> 要检查的路径。 </APIItem> <APIItem name="another" type="Path"> 要比较的路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果 `path` 等于或是 `another` 的祖先返回 `true`。 </APIReturns> </API>isDescendant检查路径是否是另一个的子孙。
<API name="isDescendant"> <APIParameters> <APIItem name="path" type="Path"> 可能的子孙路径。 </APIItem> <APIItem name="another" type="Path"> 可能的祖先路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果 `path` 是 `another` 的子孙返回 `true`。 </APIReturns> </API>isParent检查路径是否是另一个的父路径。
<API name="isParent"> <APIParameters> <APIItem name="path" type="Path"> 可能的父路径。 </APIItem> <APIItem name="another" type="Path"> 可能的子路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果 `path` 是 `another` 的父路径返回 `true`。 </APIReturns> </API>isPath检查值是否实现了 Path 接口。
isSibling检查路径是否是另一个的兄弟路径。
<API name="isSibling"> <APIParameters> <APIItem name="path" type="Path"> 要检查的路径。 </APIItem> <APIItem name="another" type="Path"> 要比较的路径。 </APIItem> </APIParameters> <APIReturns type="boolean"> 如果路径共享同一个父路径返回 `true`。 </APIReturns> </API>lastIndex获取路径的最后一个索引。
<API name="lastIndex"> <APIParameters> <APIItem name="path" type="Path"> 要检查的路径。 </APIItem> </APIParameters> <APIReturns type="number"> 最后一个索引,如果路径为空则返回 -1。 </APIReturns> </API>levels获取从路径到每个级别的路径列表。
<API name="levels"> <APIParameters> <APIItem name="path" type="Path"> 要获取级别的路径。 </APIItem> <APIItem name="options" type="PathLevelsOptions" optional> 获取级别的选项。 </APIItem> </APIParameters> <APIOptions type="PathLevelsOptions"> <APIItem name="reverse" type="boolean" optional> 如果为 true,则按反向顺序返回路径(从最深到最浅)。 </APIItem> </APIOptions> <APIReturns type="Path[]"> 包含路径本身及其所有祖先的路径数组。 </APIReturns> </API>next获取下一个兄弟节点的路径。
<API name="next"> <APIParameters> <APIItem name="path" type="Path"> 当前路径。 </APIItem> </APIParameters> <APIReturns type="Path"> 下一个兄弟节点的路径。 </APIReturns> </API>parent获取父节点的路径。
<API name="parent"> <APIParameters> <APIItem name="path" type="Path"> 当前路径。 </APIItem> </APIParameters> <APIReturns type="Path"> 父节点的路径。 </APIReturns> </API>previous获取前一个兄弟节点的路径。
<API name="previous"> <APIParameters> <APIItem name="path" type="Path"> 当前路径。 </APIItem> </APIParameters> <APIReturns type="Path | undefined"> 前一个兄弟节点的路径,如果没有则返回 `undefined`。 </APIReturns> </API>relative获取相对于祖先的路径。
<API name="relative"> <APIParameters> <APIItem name="path" type="Path"> 要相对化的路径。 </APIItem> <APIItem name="ancestor" type="Path"> 祖先路径。 </APIItem> </APIParameters> <APIReturns type="Path"> 相对路径。 </APIReturns> </API>Path一个数字数组,表示遍历文档树以到达特定节点的索引。