2016-06-27 11 views
0

Ich versuche, etwas in Node.JS zu erstellen. Ich habe den Server gestartet und eine Anfrage an index.html. In index.html bekam ich diese:Node.JS Skript-Tag hinzufügen

<!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> 

In meiner scripts/main.js Datei habe ich dieses:

var socket = null; 

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

function login() 
{ 
    socket = io(); 

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

In meinem app.js:

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

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

Wo

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

Allerdings klagt mein Browser, dass main.js Datei nicht fou ist nd ... ich habe nicht viel Erfahrung damit, also wie kann ich das beheben?

Das ist meine Projektstruktur:

Project structure

+0

können Sie uns die Hierarchie Ihrer Knoten-App zeigen? – abdoutelb

+0

Wie sieht der Server aus? Verwenden Sie eine statische Dateiordner-Middleware? – sookool99

+0

Wie lautet Ihre Route? –

Antwort

0

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

Für die Pfadverkettung sollten Sie path.join als umgebungsunabhängige Methode verwenden.

+0

Scripte? "Ja wirklich?" Ich bin so ein Idiot lol. Danke für Ihre Hilfe, mein Herr! –

-2

Sie müssen in Ihrer Skript Erklärung des Schrägstrichs loszuwerden:

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

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

Dies setzt voraus, dass sich der Ordner "scripts" am selben Speicherort wie die Datei "index.html" befindet. –