gpt4 book ai didi

javascript - Angular 值绑定(bind)发送到 ng-click 函数而不是值

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

我有一个 HTML 中处理程序的链接:

<div class="menu-item" ng-repeat="pageName in pages">
<a ng-click="routing.open('{{pageName}}')">{{pageName}}</a>
</div>

它会触发自制 Angular-UI 路由工厂/助手中的“open”函数,并将“pageName”作为参数发送。open 方法检查是否有用于加载 View 的处理程序或状态。

var availableStates = $state.get();
if (!pages[name] || availableStates.indexOf(name) === -1) {
alert("State or Loader for state: '{0}' does not exist!".format(name));
return;
}

单击后,警报将显示以下消息: enter image description here

但是当我查看 Web 控制台时,该值已正确设置。 enter image description here

我需要一些帮助来解决这个问题,是什么导致了这种行为以及如何解决这个问题?

最佳答案

您不应在 ng 表达式内使用 {{ }}。替换

ng-click="routing.open('{{pageName}}')">

ng-click="routing.open(pageName)">

这样做的原因是,您应该将所有专门的“类似 ng”的表达式视为已包含在 {{ }} 中,因为它们已经被评估为 Angular 表达式。仅当您想要告诉 Angular 您希望将双括号内的内容计算为 Angular 表达式时,才应使用 {{ }}。

关于javascript - Angular 值绑定(bind)发送到 ng-click 函数而不是值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29319426/

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