gpt4 book ai didi

javascript - 切换为 !运算符在页面加载 JavaScript 时不起作用

转载 作者:行者123 更新时间:2023-12-02 16:39:11 25 4
gpt4 key购买 nike

我有一个 onClick (使用 angular.js ng-click),我必须通过单击切换表格行的颜色。

这是最初的实现。

   <tr>
<td ng-class="{'setType': types.isTypeSet('TYPE') == true}" ng-click="types.setType('TYPE')">

<img class="typebox-img" src="">
<div class="typebox">TYPE</div>

</td>
</tr>

其中“type”是表格行的类型,“types”是 Angular Controller 。

types.setType(类型):

 ...
this.types[type] = ! this.types[type];
...

虽然这会切换第二次单击时的值,但它不会更改第一次单击时的值。我使用 if-else 语句实现了该功能,但无法弄清楚为什么这不起作用,因为这是一个非常基本的事情。

this.types[type] 默认设置为 false。

有人可以解释一下为什么会发生这种情况吗?

最佳答案

这行不通,我并不感到惊讶:

ng-click='types.setType('type')

使用 " 作为内部引号,以使解析器理解您要执行的操作(或相反):

ng-click='types.setType("type")'

顺便说一句,您不需要函数来执行此操作。只需在 Controller 中初始化一个 bool 值即可:

$scope.toggle = true

并在您的 View 中像这样使用:

ng-click='toggle = !toggle'

关于javascript - 切换为 !运算符在页面加载 JavaScript 时不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27646364/

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