gpt4 book ai didi

angular - 如何在 Angular 5 中更改 ng-template 变量

转载 作者:行者123 更新时间:2023-12-05 06:33:43 25 4
gpt4 key购买 nike

当我尝试在模板内单击更改 ng-template 变量时,我收到错误消息(未捕获错误:无法分配给引用或变量!)

<ng-template let-o="opened" [ngTemplateOutletContext]="{ opened: d === 0 }" [ngTemplateOutlet]="item" #item>
<div class="columns table-header is-marginless">
<button (click)="o = !o">+</button>
<div [hidden]="!o">Toggle me on button click</div>
</div>
</ng-template>

那么如何访问局部的'o'变量以改变顺序呢?

最佳答案

当 Angular 渲染模板时,它每次都会创建一个上下文,并使用该上下文来渲染 HTML。这意味着,当再次呈现模板时,以后对该上下文所做的任何更改都将被丢弃。因此,每次呈现模板时,o 的值始终是 d === 0

错误消息 Cannot assign to a reference or variable 只是为了阻止您尝试修改这些临时值。因为任何更改都将在下次模板呈现时丢失。

(click) 事件应该改变 d 的值。因此,当创建下一个上下文时,o 的值代表新状态。

关于angular - 如何在 Angular 5 中更改 ng-template 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50609169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com