2016-04-26 3 views
0

Ich vermisse etwas wirklich offensichtlich im Zusammenhang mit der Bereitstellung statischer Dateien in HTTP.Kann Skriptdateien, die mit HTML-Datei mit Koa verknüpft sind, nicht liefern

Ich kann Skriptdateien von einem CDN von <script> Tags in meinen Dokumenten verknüpfen. Jedoch kann ich meine eigenen Javascript-Dateien, die sich in einem /components-Ordner in meinem HTTP-Server-Stammverzeichnis befinden, nicht verknüpfen, der von koa.js ausgeführt wird. Ich weiß das, indem ich die Ressourcen des Browser-Inspektors überprüfe, es gibt von CDN gelieferte Dateien, aber keine Spur von letzteren.

Die Dateien, die mit der folgenden HTML-Datei verknüpft werden müssen, sind components/questionbox.js und components/main.js.

<!DOCTYPE html> 
<html> 
    <head> 
    <meta charset="utf-8" /> 
    <title>Questions, Home</title> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23/browser.min.js"></script> 

    <!-- Universal JS-ClientSide (1/3): Load React, ReactDOM and the react component to be mounted to the mount node. --> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.1/react.js"></script> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.1/react-dom.js"></script> 
    <script src"/questionbox.js"></script> 
    <!-- Universal JS-ClientSide (1/3): Load React, ReactDOM and the react component to be mounted to the mount node. --> 

    <link rel="stylesheet" href="styles.css" /> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/marked.min.js"></script> 

    </head> 
    <body> 
    <!-- Universal JS-ServerSide&ClientSide (2/3): Create a mount node to mount the react component to. --> 
    <div id="mount-node"><%- markup %></div> 
    <!-- Universal JS-ServerSide&ClientSide (2/3): Create a mount node to mount the react component to. --> 

    <!--script id="jsonifiedInitialProps" type="application/json"> 
     {{{ jsonifiedInitialProps }}} 
    </script--> 

    <script type="text/babel"> 

     // Universal JS-ClientSide (3/3): Mount the react component to the mount node. 
     ReactDOM.render(<QuestionBox />, document.getElementById('mount-node')); 
     // Universal JS-ClientSide (3/3): Mount the react component to the mount node. 

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

    </body> 
</html> 

Verwandte Code-Fragment auf meinem Server-Code ist wie folgt; app.use(static(__dirname + '/components'));, die koa-static Npm-Modul verwendet.

Mehr zu meiner Überraschung css Dateien, die im selben Ordner sind, können erfolgreich mit der HTML-Datei verknüpft werden.

Was kann das Problem hier sein? Was vermisse ich bei einem so grundlegenden Thema von HTTP?

Antwort

1

Es gibt einen Tippfehler im src-Attribut der Skript-Tags, die mit diesen beiden Javascript-Dateien verknüpft sind. Das Gleichheitszeichen = fehlt in ihnen.

<script src="questionbox.js"></script>

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

+1

Ich kann nicht glauben, wie ich Stunden für einen solchen Fehler ruinieren. –

Verwandte Themen