2016-04-25 5 views
2

アプリケーションディレクトリの "www"ディレクトリからアプリケーションの静的コンテンツを提供しようとしています。静的ファイルを提供しようとするとノードJS Expressが定義されない

-www 
    --node_modules 
    --js 
    --index.js 
    --index.html 
    --package.json 

私はjsのフォルダ内にあるmain.jsファイルを使用したいが、私は、インデックスに

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

を使用しようとすると:

私のフォルダは次のようになり。 html、私のコンソールは私にGETエラーと404ファイルが見つかりません。私はエラーを取得するサーバーを実行しようとすると、

var app = require('express')(); 
    var http = require('http').Server(app); 
    var io = require('socket.io')(http); 

    app.use(express.static(__dirname + '/www')); 

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

私のコードは次のようになります

app.use(express.static(__dirname + '/www'); 
    ReferenceError: express is not defined 

を誰かが私になぜこれが起こっているのヒントを与えることはできますか?

答えて

10

expressをインポートするのを忘れました。

また、静的でないファイルは "静的ファイル"に必要なパスであるため "www"の外に移動する必要があります。

+0

まあ介して行うことができるが、 404ファイルが見つかりません。私のmain.jsファイルが認識されていないと私は理由を知らない... – bernas

+0

stilは動作しませんでした。投稿した例を使用しようとしましたが、常に404エラーが表示されます – bernas

1

あなたのコードでは、expressという名前の変数は宣言していません。明示的に名前が付けられた変数がないと、それを変数/関数/キーと呼ぶことができます。

express./anything/を使用するには、というコードをと明示する必要があります。それは、私は、STILのコンソールにエラーを取得しています、少なくとも私はもう、サーバーを実行しようとすると、Expressはエラーが定義されていない届かないので助け

var express = require('express'); 
関連する問題