1 回答
TA贡献1847条经验 获得超7个赞
您可以直接从 Angular 获得一些选择。核心原则是使用组件中的变量并检查它以及在模板中进行更新。
第一个解决方案,模板:
<div uib-accordion-group class="mt-1" ng-repeat="x in data.details" heading="{{data.displayName}}">
<span id="dots" [hidden]="! showTable"> <table>..</table> </span>
<span id="more" [hidden]="showTable"> <pre>{{ x|json:4 }}</pre> </span>
<button (click)="toggleTableVisibility()" id="myBtn">Read more</button>
</div>
并且在组件中
showTable = true;
function toggleTableVisibility() {
this.showTable = ! this.showTable;
}
第二种解决方案,使用ngIf,仅模板发生变化
<div uib-accordion-group class="mt-1" ng-repeat="x in data.details" heading="{{data.displayName}}">
<span id="dots" *ngIf="showTable"> <table>..</table> </span>
<span id="more" *ngIf="! showTable"> <pre>{{ x|json:4 }}</pre> </span>
<button (click)="toggleTableVisibility()" id="myBtn">Read more</button>
</div>
我没有对此进行测试,因此可能存在拼写错误/解析错误,但这就是要点。两者之间的区别在于 with[hidden]内容被隐藏display: none,而 withngIf内容只是从 DOM 中删除。
编辑:修改我的答案以反映添加切换按钮的问题的更新。
添加回答
举报