Node.JS添加脚本标记

时间:2016-06-27 16:00:23

标签: javascript node.js

我正在尝试在Node.JS中创建一些东西。我启动了服务器并请求index.html。在index.html中,我得到了这个:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <input type="text" id="name" placeholder="name">
    <button id="login">Login</button>

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
    <script src="/scripts/main.js"></script>
</body>
</html>

在我的scripts / main.js文件中,我得到了这个:

var socket = null;

$(document).ready(function() {
    $('#login').click(login);
});

function login()
{
    socket = io();

    socket.emit('set-name', {name: $('#name').val()});
};

在我的app.js中:

app.get('/', function(req, res){
    res.sendFile(__dirname + '/index.html');
});

app.use('/scripts', express.static(__dirname + '/scipts/'));

其中

var app = require('express')();

但是,我的浏览器抱怨找不到main.js文件...我没有多少经验,所以如何解决这个问题?

这是我的项目结构:

Project structure

2 个答案:

答案 0 :(得分:0)

app.use('/scripts', express.static(__dirname + '/scipts/'));替换为app.use('/scripts', express.static(__dirname + '/scripts/'));

对于路径连接,请考虑使用path.join作为与环境无关的方法。

答案 1 :(得分:-2)

你需要摆脱脚本声明中的正斜杠:

<script src="/scripts/main.js"></script> 

应该是

<script src="scripts/main.js"></script>