【发布时间】:2020-01-01 01:46:19
【问题描述】:
这就是我想要实现的(将其视为示例场景) -
- 元素 1
- 元素 2
- 元素 3
- 元素 4
元素 4 是我的角度组件。我想根据元素 1 和元素 2 的高度来设置它的高度。
元素 1 和元素 2 可以位于元素层次结构中的任何位置,即它们不一定必须是直接父级或兄弟级。我希望能够通过类名获取元素 1 和元素 2 的引用并获取它们的高度。
通过类名或任何其他选择器以角度查询父元素的最佳方法是什么?
【问题讨论】:
-
根据其他动态内容的高度动态控制元素的高度在 Angular 中是非常成问题的。简单地引用元素不太可能足以完成这项工作。当元素 1 和元素 2 发生变化时,试图让元素 4 保持最新,您会遇到变化检测问题。
-
是元素 1/2/3 角度组件还是只有元素 4 是角度组件?
-
@tgralex 只有元素 4 是一个角度组件。所有其他元素可能是也可能不是角度组件。
-
@Reactgular 在这种情况下你有什么建议?你会推荐为此目的使用 jQuery 吗?
-
它与查询 DOM 元素没有任何关系。这样做相对简单,但是您如何知道元素 1 或 2 是否发生了变化?如果元素 4 取决于这些元素的高度,并且这些元素稍后会发生变化,那么元素 4 怎么知道它也需要改变它的高度呢?这是通过 JavaScript 进行 DOM 对象布局时的常见问题。我建议您在开始尝试通过 JavaScript 解决布局问题之前重新考虑您的方法。尝试先找到一种 CSS 方法。
标签: javascript angular selector angular-directive angular8