为什么谷歌浏览器无法找到我的app.js文件

时间:2017-01-30 18:08:39

标签: javascript node.js google-chrome

我开始用简单的应用学习Nodejs。谷歌浏览器似乎无法在我的/assets/js.app

中找到我的app.js文件

Here is the console errors

然后如您所见,我相信我已正确设置路径 enter image description here

而不是{{vm.message}},它应该说Hello World。

Chrome一直告诉我它无法在index.ejs模板文件中找到app.js文件,该文件看起来像这样

    <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>

1 个答案:

答案 0 :(得分:2)

使用express.static时,可选路由前缀实际上不是文件路径的一部分,而是附加到URL。您可以使用/assets/assets/js/app.js,但最好只删除前缀:app.use(express.static(__dirname + "/public"))

我还会说assets应该保留用于像图像这样的东西,js甚至css属于他们自己的更高级目录,但这是有争议的。

提供来自express的静态内容适用于开发或玩具应用,但在实际的制作应用中,您应该查看比node.js更好的静态文件服务器。