使用“动态高度”选项时,Angular Material标签组件有一些非常糟糕的性能问题,这显然也在demo page here上。
他们的演示页面上的第一个标签具有动态高度,如果你换到第二个标签(因为它有更多的内容)并向上和向下滚动,你可以感觉到滚动滞后,如果你滚过第一个标签并翻过来其他人,它没有这样做。我最后挖掘了源代码,虽然它确实需要我花费大约2个小时才能找到,但事实证明它是一个单一的css属性,它正在杀死它。
在同一个演示页面上,如果你只是在控制台中运行它,你会看到滚动时的即时性能提升。
angular.element(document.querySelector('md-tabs.md-dynamic-height md-tabs-content-wrapper')).css('overflow', 'hidden')
这令我感到困惑,因为他们的css将溢出设置为可见,这是默认值,但有人hidden
正在修复此性能问题,我非常想知道如何/为什么!
任何帮助都会非常感激!