gpt4 book ai didi

javascript - Uncaught ReferenceError : angular is not defined (anonymous function)

转载 作者:行者123 更新时间:2023-11-29 17:58:59 24 4
gpt4 key购买 nike

我正在尝试使用 AngularJS 测试一个示例以评估表达式,但显示错误:'Uncaught ReferenceError: angular is not defined'(匿名函数)我有两个文件:index.html 和 expression.jsindex.html:

<script src="/home/mohamed/Desktop/AngularJS/expression.js"></script>
<script src="/home/mohamed/Desktop/AngularJS/angular.min.js"></script>


<div ng-controller="ExampleController" class="expressions">
Expression:
<input type='text' ng-model="expr" size="80"/>
<button ng-click="addExp(expr)">Evaluate</button>
<ul>
<li ng-repeat="expr in exprs track by $index">
[ <a href="" ng-click="removeExp($index)">X</a> ]
<code>{{expr}}</code> => <span ng-bind="$parent.$eval(expr)"></span>
</li>
</ul>
</div>

表达式.js :

angular.module('expressionExample', []).controller('ExampleController', ['$scope', function($scope) {
var exprs = $scope.exprs = [];
$scope.expr = '3*10|currency';
$scope.addExp = function(expr) {
exprs.push(expr);
};

$scope.removeExp = function(index) {
exprs.splice(index, 1);
};
}]);

最佳答案

进行此更改

<script src="/home/mohamed/Desktop/AngularJS/angular.min.js"></script>
<script src="/home/mohamed/Desktop/AngularJS/expression.js"></script>

原因是您的 expression.js 依赖于 angualarjs 框架。当您执行 angular.module 时,它会寻找用于配置模块的接口(interface)。由于表达式 js 在 angularjs 之前加载,因此无法找到接口(interface)。

这同样适用于其他库和框架。如果您的 js 文件依赖于 jquery 之类的库,则应在自定义文件之前加载 jquery.js 文件

要消除此类错误,您可以查看asynchronous module definition(AMD)CommonJS。也可以探索模块加载器,例如 webpack

关于javascript - Uncaught ReferenceError : angular is not defined (anonymous function),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36600341/

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