我得到了#34; Uncaught ReferenceError:angular not not defined"使用打字稿时

时间:2017-05-31 08:41:03

标签: javascript jquery angularjs typescript

我刚刚开始使用视频教程中的angularjs学习打字稿。当我尝试将角度模块放入我的应用程序中时#34;默认情况下,文件是后端的主文件。这是我的app.js代码:

/// <reference path="Scripts/typings/jquery/jquery.d.ts" />
/// <reference path="Scripts/typings/angularjs/angular.d.ts" />



console.log("This is a TS file"); 


angular.module('classProjectApp', ['ngRoute'])
    .config(function ($routeProvider) {
        console.log("in Config()");
    });

我在index.html文件中添加了angularjs文件,如:

<html lang="en">
<head>
    <meta charset="utf-8" />
    <title>TypeScript HTML App</title>
    <link rel="stylesheet" href="app.css" type="text/css" />
    <script src="app.js"></script>
    <script src="Scripts/angular.js"></script>
    <script src="Scripts/angular-route.min.js"></script>
</head>
<body>
    <h1>TypeScript HTML App</h1>

    <div id="content"></div>
</body>
</html>

尽管如此,我收到了错误

  

未捕获的ReferenceError:未定义角度

尽管视频教程中的相同示例工作正常。

P.S。当我在index.html文件中为angular添加引用时,我必须放置相对路径(Scripts /.../.../ angular.js),而在视频教程示例中使用&#34; angular.js&#34;

谢谢。

1 个答案:

答案 0 :(得分:2)

  • 您应该将angularjs引用移到顶部
  • app.js应该转到下面。
  • 您还应在ng-app="classProjectApp"代码上定义html

尝试以下代码而不是代码

<html ng-app="classProjectApp" lang="en">
<head>
    <meta charset="utf-8" />
    <title>TypeScript HTML App</title>
    <link rel="stylesheet" href="app.css" type="text/css" />
     <script src="Scripts/angular.js"></script>
     <script src="Scripts/angular-route.min.js"></script>
     <script src="app.js"></script>

</head>
<body>
    <h1>TypeScript HTML App</h1>

    <div id="content"></div>
</body>
</html>