Javascript /节点链接main.js

时间:2016-08-07 15:40:49

标签: javascript node.js express

所以我只是在学习,我正在尝试使用节点构建一个Web应用程序,我知道我可以使用express,但我正在尝试使用Node构建它以便更好地理解。

问题是我无法在应用程序上加载main.js页面。 我有一个构建页面的路由器模块,例如

function home(req, res) {
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.write(fs.readFileSync('./views/header.html'));
    res.write('<style>' + fs.readFileSync('./css/styles.css') + '</style>');
    res.write(fs.readFileSync('./views/startpage.html'));
    res.end(fs.readFileSync('./views/footer.html'));
};

并且脚本标记位于关闭正文标记之前的页脚部分中,我是否需要以不同的方式加载它?

这是完整的应用程序,如果这是不够的信息,谢谢 https://github.com/naassi/taxi-log

1 个答案:

答案 0 :(得分:1)

您可能想要所有css和javascript文件的静态文件服务器。不包括在家中发送CSS文件内容,包括 <style>./css/styles.css</style>,并使用相应的文件回答* .css文件的请求:

function staticServer(req, res) {
  fs.readFile(__dirname + req.url, function (err,data) {
    if (err) {
      res.writeHead(404);
      res.end(JSON.stringify(err));
      return;
    }
    res.writeHead(200);
    res.end(data);
  });
})

在页脚中,您要加载.js文件 - 您的节点服务器负责提供该文件,就像它处理例如家庭的请求一样。

如果您正在学习Node,请尝试远离同步功能,阻止事件循环,并打败Node的好部分:)