一个指令可以在它的父级上要求一个控制器?

A directive can require a controller on it's parent(s)?

angular docs 开始,它描述了使用 require 属性.

指定从指令中查找控制器的位置的方法

^^ - Locate the required controller by searching the element's parents. Throw an error if not found.

如果一个元素有两个或更多 "parents".. 一个 DOM 元素只能有一个父元素,那么文档指的是什么?

^^ - Locate the required controller by searching the element's parents. Throw an error if not found.

文档说控制器将在元素的父元素 div 上搜索,而不是当前元素,如果在父元素 div 中没有这样的控制器,那么它会抛出错误。

--grand parent div
  --parent div
    --directive element

在上面的指令元素的树结构中,它将搜索控制器而不是指令元素本身,而是搜索父元素,这意味着首先在 parent div 中搜索,如果找到使用该控制器,如果没有,再次搜索其父元素那是 grand parent div,所以现在如果找到控制器,则使用它并搜索直到父 divs 结束,即使找不到这样的控制器,它也会抛出错误。

希望,你明白了!