2017-01-30 4 views
0

Я начинаю изучать Nodejs с помощью простого приложения. Google Chrome не может показаться, чтобы найти мой app.js файл в моем /assets/js.appПочему Google Chrome не находит файл app.js

Here is the console errors

А потом, как вы можете видеть, я считаю, у меня есть пути установить окна правильно enter image description here

Вместо {{vm.message}} следует сказать Hello World.

Chrome продолжает говорить мне, что не может найти файл app.js в файле index.ejs шаблон, который выглядит как этот

<html ng-app="TestApp"> 
<title>The MEAN Stack</title> 
<head> 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular.js"></script> 
</head> 
<body ng-controller="MainController as vm"> 
    {{ vm.message }} 
    <script src="/assets/js/app.js"></script> 
</body> 
</html> 
+0

попробуйте использовать это для источника в index.ejs

+0

вы устанавливаете '/ assets' в свой каталог'/public', а не ваш '/ public/assets ', так как ваш url для скрипта, вероятно, должен быть'/assets/assets/js/app.js' –

ответ

2

При использовании express.static, необязательный префикс маршрута не является частью путь к файлу, но он добавляется к URL-адресу. Вы можете использовать /assets/assets/js/app.js, но может быть лучше просто удалить префикс: app.use(express.static(__dirname + "/public")).

Я хотел бы также сказать, что assets должны быть зарезервированы для таких вещей, как образа и js и, возможно, даже css принадлежат в своих высших каталогах уровня, но это спорно.

Выполнение статического контента с express отлично подходит для приложений разработки или игрушек, но в реальном рабочем приложении вы должны изучить более статический файловый сервер, чем node.js.

+0

спасибо за быстрый ответ и объяснение ... помогает в моем путешествии по обучению. – user3125823

Смежные вопросы