2015-11-16 4 views
1

Я создал свои первые server.js, index.html и test.js. когда я бегу с узлом, страница индекса не может вызвать test.jshtml не могу назвать file.js

var http = require('http'); 
var fs = require('fs'); 
var server = http.createServer(function(req, res) { 
    fs.readFile('./index.html', 'utf-8', function(error, content) { 
     res.writeHead(200, {"Content-Type": "text/html"}); 
     res.end(content); 
    }); 
}); 

server.listen(8080); 

index.html

<!DOCTYPE html> 
<html> 
    <head> 
     <meta charset="utf-8" /> 
     <title>PLAN</title> 
     <script type="text/javascript" scr="test.js"></script> 
    </head> 
    <body> 
     hello 
    </body> 
</html> 

test.js

"use strict"; 
alert("aa1"); 
+5

Это должно быть 'src', а не' scr' в HTML. – activatedgeek

ответ

1

Есть 2 проблемы с вашей.

  1. Некорректное <script> атрибут тега, переход от scr к src в файле index.html

  2. Ваш сервер должен служить файл яваскрипта, то есть fs.readFile('./test.js'), так Измени server.js к следующему.

var http = require('http'); 
var fs = require('fs'); 
var path = require('path'); 

http.createServer(function (request, response) { 
var filePath = '.' + request.url; 
if (filePath == './') filePath = './index.html'; 

var extname  = path.extname(filePath); 
var contentType = 'text/html' 
if (extname == '.js') contentType = 'text/javascript'; 

fs.readFile(filePath, function(error, content) { 
    response.writeHead(200, { 'Content-Type': contentType }); 
    response.end(content, 'utf-8'); 
}); 

}).listen(8080); 
console.log('Server running at http://127.0.0.1:8080/'); 

Я думаю, что это должно работать.

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