未捕获的ReferenceError:未定义myFunc的

问题描述 投票:-4回答:2

我试图访问该功能myFunc()但出于某种原因,我无法访问它。我得到这个错误。

未捕获的ReferenceError:myFunc没有定义。无法访问功能myFunc(),虽然在范围内创建。

<!DOCTYPE html>
<html>
    <head>
        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular.min.js"></script>

        <style>
            table 
            {
                width: auto;
                font: 17px Calibri;
            }
            table, th, td 
            {
                border: solid 1px #DDD;
                border-collapse: collapse;
                padding: 2px 3px;
                text-align: center;
            }
        </style>
    </head>
    <body>
        <div ng-app="myApp" ng-controller="myController">
            <svg onload="myFunc()">

                //$scope.list2 = $scope.list.weather;
                //console.log("line 63:"+$scope.list2);

                }).error(function () 
                {

                });

                console.log("line 68:");
            }
        });
    </script>
</html>

请,请注意,我不是现在要执行任何动作。现在,我试图让thoes console.log()函数来执行。

angularjs angularjs-scope
2个回答
0
投票

<svg onload="myFunc()">试图调用在加载myFunc的功能。该函数未声明。

代码开头

            //$scope.list2 = $scope.list.weather;
            //console.log("line 63:"+$scope.list2);

            }).error(function () 
            {

            });

            console.log("line 68:");
        }
    });

你没有任何控制器声明。看起来像函数的声明也消失。你的代码开始与被注释掉两行,然后你必须

 }).error(function () 
                {

                });

看起来你复制粘贴,但没有复制的完整代码

编辑:你也没有开口<script>标签。你有HTML,那么你的代码和代码收盘</script>标签后


0
投票

这是因为myFunc()未在控制器中定义:

  • 确保在HTML调用的函数存在于效果控制器。
  • 另外,还要确保你的控制器(ng-controller="myController")是第一个使用这个模板的模块中定义。
  • 此相同的模块应该是的AppModule的一部分 <svg onload="myFunc()">
© www.soinside.com 2019 - 2024. All rights reserved.