angularjs не загружается при использовании экспресс - PullRequest
0 голосов
/ 05 мая 2018

, когда я открываю файл index.html в браузере, он работает нормально, но когда я запускаю его на локальном сервере в Express, он не работает.

server.js

const express = require('express');

const app = express();

app.get('/', (req, res) => {
    res.sendFile(__dirname + '/index.html');
});

app.listen(3000, () => {
    console.log('App is running on port 3000');
});

app.js

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

myApp.controller('mainController', ['$scope', '$filter', '$http', function($scope, $filter, $http) {
    $scope.handle = '';
    enter code here

}]);

index.html

<html ng-app="myApp">
<head>
    <title>Angularjs</title>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>

</head>
<body>
    <div ng-controller="mainController">
        <div>
            <input type="text" ng-model="handle">
        </div>
        <br/>
        <h1>Hello {{ handle }}</h1>
    </div>
    <script src="app.js"></script>
</body>

1 Ответ

0 голосов
/ 05 мая 2018

Вам нужен другой маршрут к серверу файл контроллера (app.js) с сервера.

Что-то вроде

app.get('/app.js', (req, res) => {
res.sendFile(__dirname + '/app.js');
});

Что не так с вашим кодом, так это то, что когда вы отрываете файл index.html от сервера и когда он отображается в браузере, браузер теперь отправляет запрос на загрузку файла app.js (который является вашим контроллером), и вы не отвечайте на этот запрос. Вот почему ваше приложение не работает.

Ps. если вы откроете вкладку сети и проверьте код ответа 404. Вы увидите это для app.js файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...