ReferenceError:angular未定义index.js

时间:2017-12-06 18:13:48

标签: angularjs node.js

我已经在SO上查看了这个问题的每个答案,但是在我的案例中我找不到任何可以解决错误的方法。我在启动我的应用程序时收到它。我正在使用nodejs。

的index.html

<!doctype html>
<html lang="en" ng-app="myApp">
<head>
<meta charset="utf-8">
<title>ITSC</title>

<!-- scripts -->
<script type="text/javascript" src="../node_modules/angular/angular.min.js">
</script>
<script type="text/javascript" src="../node_modules/angular-route/angular-route.min.js"></script>
<script type="text/javascript" src="../index.js"></script>
</head>
<body>
<header></header>
<div class="page" ng-controller="appController">
    <main class="cf">
      {{ message }}
</main>
</div>
</body>
</html>

index.js

var express = require('express');
var path = require('path');
var port = process.env.PORT || 8080;
var router = require('./public/js/routes')
var app = express();




app.use('/', router);
app.use(express.static(__dirname + '/public'));
app.listen(port, function () {
    console.log('app started');
});

var myApp = angular.module('myApp', []);

myApp.controller('appController',['$scope', function($scope){
    $scope.message="Welcome to the app!!";

}]);

1 个答案:

答案 0 :(得分:0)

首先,将您的角度代码写在单独的文件中,让我们命名app.js 其次,你不能像../node_modules/angular/angular.min.js那样处理角度,最好使用webpack或browserify之类的工具来制作捆绑。但是对于您的测试,您可以将这些文件复制到public文件夹中。 /angular.min.js

<!-- scripts -->
<script type="text/javascript" src="/angular.min.js">
</script>
<script type="text/javascript" src="/angular-route.min.js"></script>
<script type="text/javascript" src="/app.js"></script>

public/app.js

var myApp = angular.module('myApp', []);

myApp.controller('appController',['$scope', function($scope){
    $scope.message="Welcome to the app!!";

}]);