2016-04-26 5 views
0

У меня отсутствует что-то действительно очевидное, связанное с обслуживанием статических файлов в HTTP.Не удается передать файлы сценариев, связанные с html-файлом, с koa

Я могу связать файлы сценариев с CDN <script> тегами в моих документах <head>. Однако я не могу связать свои собственные файлы javascript, которые находятся в папке /components в моем корневом каталоге HTTP-сервера, выполняемом koa.js. Я знаю это, проверяя ресурсы инспектора браузера, есть CDN доставленные файлы, но никаких следов последних.

Файлы, которые необходимы для привязки к html-файлу ниже, являются components/questionbox.js и 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> 

Связанный фрагмент кода на моем сервере выглядит следующим образом; app.use(static(__dirname + '/components'));, который использует koa-static модуль npm.

Ещё к моему удивлению css файлы, которые находятся в одной папке, могут быть успешно связаны с html-файлом.

В чем здесь проблема? Что я пропустил по такой базовой теме HTTP?

ответ

1

В атрибуте src тегов скрипта, связанных с этими двумя файлами javascript, есть опечатка, знак равенства = отсутствует.

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

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

+1

Я не могу поверить, как я могу испортить часы для такой ошибки. –