2016-08-22 5 views
0

初めてExpress.js/Angularアプリケーションを作成しようとしていますが、Express.jsアプリケーションによって提供されているページの$routeProviderに問題があります。ここでserver.jsがある:localhost:3000/#/mainに移動するとき、何も何かアドバイスは次のようになり<ng-view>

に注入されていないけれども

var app = angular.module('app', ['ngRoute']); 

    app.config(function ($routeProvider) { 
     $routeProvider 
      .when('/main', { 
       templateUrl:'/client/views/main.html' 
      }); 
    }); 

var express = require('express'); 
var PORT = process.env.PORT || 3000; 
var app = express(); 
app.get('/', function (req, res) { 
    res.sendFile(__dirname + '/client/views/index.html'); 
}); 

app.listen(3000, function() { 
    console.log("I'm listening"); 
}); 

index.htmlページには、次の角度のコードをレンダリングし、含み大いに感謝します。

+1

コンソールでエラーを確認しましたか? – Wake

+1

Expressアプリケーションは/client/views/main.html明示的な静的ミドルウェアをチェックしていないようです – Molda

答えて

0

ファイルを静的に提供するようにexpressに指示することで解決策を見つける前に、この問題が発生しました。

app.use(express.static('client')); 

これは、「クライアント」ディレクトリからファイルをそのまま送信するように指示します。これは、画像、CSS &クライアント側のJavaScriptなどのファイルに使用されます。ファイルを静的に参照する場合、パスは指定された静的ディレクトリとの相対パスなので、/client/views/main.html/views/main.htmlになります。

エクスプレススタティックミドルウェアhereのマニュアルを表示できます。

+0

私はまだ 'server.js'ファイルから' index.html'を提供していますか? – WakaChewbacca

+0

気にしないで、それは動作します!皆さん、ありがとうございました! – WakaChewbacca

関連する問題