Html 如何折叠角垫表中已展开的可展开行?

Html 如何折叠角垫表中已展开的可展开行?,html,angular,angular-material,Html,Angular,Angular Material,我一直在想,当我在angular中单击一个展开的行时,如何折叠它。我有一页是以类似的方式写的: (这来自此处的文档:) 基本上,这允许您展开一行,并让任何其他展开的行折叠。我希望能够在不展开任何其他行的情况下折叠现有的已展开行 我想把线路弄得一团糟: <div class="example-element-detail" [@detailExpand]="element == expandedElement ? 'expanded' : 'collapsed'">

我一直在想,当我在angular中单击一个展开的行时,如何折叠它。我有一页是以类似的方式写的:

(这来自此处的文档:)

基本上,这允许您展开一行,并让任何其他展开的行折叠。我希望能够在不展开任何其他行的情况下折叠现有的已展开行

我想把线路弄得一团糟:

<div class="example-element-detail"
           [@detailExpand]="element == expandedElement ? 'expanded' : 'collapsed'">

对于嵌套的if,类似于:

 <div class="example-element-detail"
           [@detailExpand]="element == expandedElement ? element == expandedElement ? 'collapsed' : 'expanded' : 'collapsed'">   

这显然不起作用。我不是很精通HTML/Angular/(webby的东西),所以我不确定用谷歌搜索什么来找到正确的语法。你怎么称呼像[@detailExpand]这样的东西?类方法?html方法?
谢谢

更改单击处理程序,如下所示:

(click)="expandedElement = expandedElement === element ? null : element"
这将确保,如果您单击已展开的元素,它将使
expandedElement
null,因此不会展开任何项目


[@detailExpand]
指组件的类型脚本中定义的动画。Hi@Faisal。谢谢你的回复。是的,我知道它指向那个,但我的意思是,它到底叫什么?它有具体的名字吗?像一个类方法?还是类似的?谢谢你的帮助!