我只是尝试节点js和角度js。这是我的节点代码:
var http = require('http');
var fs = require('fs');
var sys = require('sys');
http.createServer(function(req, res){
fs.readFile('angularjsex.html',function (err, data){
res.writeHead(200, {'Content-Type': 'text/html','Content-Length':data.length});
res.write(data);
res.end();
});
}).listen(8000);
angularjsex.html文件:
<html ng-app>
<head>
<script type="text/javascript" src="angular.js"></script>
</head>
<body>
<div>
<label>Name:</label>
<input type="text" ng-model="yourName" placeholder="Enter a name here">
<hr>
<h1>Hello {{yourName}}!</h1>
</div>
</body>
</html>
角度js不起作用。我错过了什么吗?
答案 0 :(得分:4)
您将为每个请求返回文件angularjsex.html
的内容。在您的HTML文件中,有一个对angular.js
的引用,浏览器将尝试从您的服务器加载,该请求将获得相同的(HTML!)内容。
对于适用于您当前服务器应用的解决方案,请替换为:
<script type="text/javascript" src="angular.js"></script>
有了这个:
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.min.js"></script>
但我建议开始使用Express,在这种情况下,如果您将服务器更改为此,则可以保留HTML代码:
var express = require('express');
var app = express();
app.use(express.static(__dirname + '/public'));
app.listen(8000);
创建目录public
并将angularjsex.html
和angular.js
文件放入其中。要查看结果,请在浏览器中打开http://localhost:8000/angularjsex.html
。
安装Express:
npm install express