2

私は現在、Hapi を使用するサーバーでアプリに取り組んでおり、.jadeファイルをロードしようとするたびに問題が発生します。私のindex.jsファイルの現在のコードは次のとおりです。

var Hapi = require('hapi');

var internals = {};

internals.main = function() {
  var options = {
    views: {
      engines: { jade: 'jade' },
      path: '../app',
      compileOptions: {
        pretty: true
      }
    }
  };

  this._server = new Hapi.createServer('localhost', 8000, options);

  this._server.route({
    method: 'GET',
    path: '/',
    handler: function(request, reply) {
      reply.view('index')
    }
  });
  // Start server.
  this._server.start()
};

internals.main();

このファイルには、ディレクトリ内にある一連のローカル スクリプトと CSS ファイルが含まれていますがapp、ページindex.jadeが読み込まれると、それらのローカル ファイルは表示されません。オプションに追加/変更する必要があるものはありますか?それとも、ローカル スクリプトとスタイル ファイルのこの場所は、Hapi を使用した jade コンパイルの問題ですか?

4

1 に答える 1

6

angular.jsとhapi.jsを使用して単一ページアプリケーションをセットアップしようとしているときに、同様のソリューションを探していました

以下の構成をサーバー ルートに追加すると、「/public」ディレクトリ内の CSS、JS などのファイルをアプリケーションから見えるようにするのに役立つことがわかりました。

server.route({
    method: "GET",
    path: "/public/{path*}",
    handler: {
        directory: {
            path: "./public",
            listing: false,
            index: false
        }
    }
});

それが役に立てば幸い。

于 2014-08-13T18:13:09.680 に答える