2016-04-19 8 views
1

私はNodeJSを初めて使用しています。私は私のejsファイル内から静的なjavascriptファイルを呼び出しています。コンソールには何も出力されません。私は静的JSファイルをExpressJSで使用できません

マイ.ejsファイル:

<head> 
    <title><%= title %></title> 
    <link rel='stylesheet' href='/stylesheets/style.css' /> 
    <script type="text/javascript" src="/javascripts/calc.js"></script> 

    </head> 
    <body>...</body> 

私の静的なJS(calc.js)ファイル:

console.log("WHY IS THIS NOT WORKING?!");//this is it I have NO MORE CODE HERE 

私はapp.use(express.static(path.join(__ DIRNAMEを追加しました、 'public'))));私のapp.jsに

私の静的なJSファイルが公の場である - >は、JavaScriptの - >

感謝をcalc.js。

+0

あなたはこのコンソールを使用するディレクトリ構造とjsファイルコードを定義できます –

+0

申し訳ありません、ただそれを追加しました。 @AkhileshSingh。これは私のJSファイル内のすべてのコードです。私は今のところそれ以外は何も持っていません。 – Han

+0

okkあなたのコードをチェックさせてください。 –

答えて

0

__dirnameとフォルダ "public"に参加していますが、あなたのejsファイルでは、スクリプトのsrcは "public"ではなくrootにあります。これは問題かもしれません。

+0

私はそれをpublic/javascripts/calc.jsにしてもまだ動作しません。 – Han

+1

明示的には、静的パスは "use"ステートメントで指定されたフォルダを基準にしています。つまり、パスに「public」を使用しないでください。 – HeadCode

0
app.use('/public',express.static(path.join(__dirname,'public'))); 
0

このラインをあなたのapp.jsに追加してください app.use(express.static(__dirname + '/public'))
私のために働いています。

関連する問題