2016-09-02 2 views
0

Я пытался узнать стек MEAN и хотел сделать приложение, чтобы проверить его. Цель состояла в том, чтобы иметь статическую переменную (в данном случае «привет»), отображаемую Angular в HTML, я не могу заставить переменную $ scope в моем контроллере отображать, посмотрев в консоли разработчика в моем браузере. saw 'GET 127.0.0.1:3000/app.js 404 not found'.Nodejs/Express с углом - ошибка 404

Это мой сервер узла с помощью экспресс:

var express = require('express'); 
app = express(); 

app.get('/', function(req, res){ 

     res.sendFile(__dirname + '/views/index.html'); 
}); 



app.listen(3000, function() { 
     console.log('I\'m listening on port 3000...'); 
}); 

Это мой index.html файл (каталог ниже/просмотров):

<!DOCTYPE html> 
<html ng-app="myModule"> 
<head> 
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/ 
angular.min.js"></script> 
    <script type="text/javascript" src="app.js"></script> 
</head> 

<body> 
<h1>Sucess!</h1> 

     <div ng-controller="myController"> 
       <p>Angular test: {{ message }}</p> 
     </div> 
</body> 

И это мой Файл app.js, содержащий мой модуль и контроллер (также в/просмотрах):

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

    myApp.controller('myController', ['$scope', 
function($scope) { 

    $scope.message = 'hello'; 

}]); 

Буду очень признателен, если кто-нибудь сможет помочь!

+0

Как вы ожидаете, что первый тег сценария для работы? –

+1

Вы пытались определить папку статических файлов https://expressjs.com/en/starter/static-files.html? –

+0

@MikeMcCaughan Код был скопирован с nano на Ubuntu, остальная часть тега скрипта: $/angular.min.js "> – milesb

ответ

3

Вы должны будете обслуживать все файлы, например, с помощью express.static, а не только index.html:

var express = require('express'); 
app = express(); 

app.use(express.static('views')); 

app.listen(3000, function() { 
    console.log('I\'m listening on port 3000...'); 
});