【发布时间】:2016-04-17 21:56:38
【问题描述】:
我已经构建了一个 Node.JS 应用程序(这意味着我在主 JS 文件中编写了自己的 HTTP 服务器,它应该与应用程序的其余部分一起工作)。 HTML 和 CSS 在 localhost 中呈现应有的效果。甚至 JQuery 也可以工作(使用通过 CDN 导入的源文件)。但是,我尝试在 Index.html 页面中添加非常基本的 AngularJS,并且 AngularJS 拒绝在我的本地主机中显示(任何地方)。它应该显示数字“3”,但没有。
这是我的 Index.html 页面,带有 Angular 代码:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{{title}}</title>
<link rel="stylesheet" href="/css/home.css">
<script src="/node_modules/angular/angular.js"></script>
<script src="/node_modules/angular-route/angular-route.js"></script>
</head>
<body>
<body ng-app>
<p>AngularJS code: {{ 1 + 2 }}</p>
</body>
<div class="hm-container">
<h1 class="hm-title">Some text</h1>
</div>
</body>
</html>
chrome 中的控制台日志消息说:
"Failed to load resource: the server responded with a status of 404 (Not
Found) http://localhost:3000/node_modules/angular/angular.js"
在我的 Brackets 文本编辑器浏览器预览中进行测试以及使用 HTTP-Server 模块作为独立 HTML 文件进行测试时,Index.html 页面仅将 Angular 代码正确呈现为独立的独立 HTML 页面(没有 CSS)。它正确显示数字“3”。所以我知道我的角度代码本身不是这里的问题。在我的本地主机中,HTML 页面没有显示数字“3”,甚至没有显示“{{ 1 + 2 }}”。它只是写着:“AngularJS 代码:”以及其余的 HTML 和 CSS 等。
即使通过 CDN 导入 AngularJS 源文件,或者从 Angular 的站点而不是从 NPM 下载 AngularJS 源文件,也没有任何区别。根据您的一些建议,我也使用了目录结构,但没有运气。所以我知道问题不是 Angular 源文件的文件路径。
我已经被困在这个问题上太多天了,失眠了,并且因此放弃了所有其他活动,所以如果你们中的任何人都可以就发生的事情以及如何解决这个问题给我您的意见,万分感激!!! :)
【问题讨论】:
-
看起来您正在将 Web 根目录与项目根目录混为一谈。 Angular 的路径需要相对于 index.html 的位置。将 index.html 放在与 node_modules 目录相同的目录中,它应该可以工作。
-
感谢您的意见 Jason,我已听从您的建议,但不幸的是,这并不能解决问题。同样,它仅在作为独立的 HTML 文件运行时才有效。
标签: angularjs node.js express mean-stack