gpt4 book ai didi

javascript - AngularJS 范围定义的函数为 null

转载 作者:行者123 更新时间:2023-11-28 20:08:41 24 4
gpt4 key购买 nike

我在 Controller 中定义了一个函数,它通过 ng-click 绑定(bind)到 a 元素,嵌套 a 元素的 li 元素也有一个 ng-repeat 指令。
当我通过 Angular chrome 开发者工具检查该 Controller 的 $scope 时,我发现该函数(在本例中为 $scope.goToApp)为 null。

我已经在其他 Controller 中多次执行过此操作,因此为了确保我没有犯任何拼写错误,我从另一个 Controller 复制粘贴了我的操作方法,但无济于事。

Controller :

(function () {
'use strict';

var controllers = angular.module('portal.controllers');

controllers.controller('applicationController',['$scope', 'ApplicationService', 'NavigationService','$rootScope', function ($scope, ApplicationService, NavigationService,$rootScope) {

$scope.goToApp = function(appId){
NavigationService.navigateToApp(appId, false);
};

$rootScope.ESS = ApplicationService.getApplications(Constants.id_ESS);
$rootScope.SVF = ApplicationService.getApplications(Constants.id_SVF);
$rootScope.MED = ApplicationService.getApplications(Constants.id_MED);

$rootScope.$watch('ESS', function(newValue){
$scope.ESS = newValue;
});

$rootScope.$watch('SVF', function(newValue){
$scope.SVF = newValue;
});

$rootScope.$watch('MED', function(newValue){
$scope.MED = newValue;
});
}]);
}());

HTML:

<li data-ng-repeat="tool in ESS | filter: {tool:true} | orderBy:'description'" class="col-lg-12">
<a class="toolLink" href="#" data-ng-click="goToApp({{tool.code}})">{{ tool.description }}</a>
</li>

调试器:

goToApp: null

最佳答案

ngClick 接受表达式作为参数。无需使用插值:

data-ng-click="goToApp(tool.code)"

关于javascript - AngularJS 范围定义的函数为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20282682/

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