Hapi.js查看没有看到本地脚本

时间:2014-05-25 04:30:47

标签: javascript node.js hapijs

我目前正在使用使用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();

该文件包含一系列位于app目录中的本地脚本和CSS文件,但是当加载页面index.jade时,它不会看到这些本地文件。我需要在我的选项中添加/修改某些内容,还是本地脚本和样式文件的位置是使用Hapi进行jade编译的问题?

1 个答案:

答案 0 :(得分:6)

我正在寻找类似的解决方案,同时尝试使用angular.js和hapi.js设置单页应用程序

我发现将以下配置添加到服务器路由将有助于使'/ public'目录中的CSS,JS,...文件对应用程序可见。

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

希望它有所帮助。