0

我想为每个插件实现路由,但我无法在插件中添加视图引擎。我已经看到了可能的示例,例如:https ://github.com/hapijs-edge/hapi-plugins.com/blob/master/lib/routes.js ,但我收到一条错误消息server.views is not a function

var Hapi = require('hapi');

var server = new Hapi.Server();
server.connection();

var myPlugin = {
    register: function (server, options, next) {

        // Error happens here, should be able to see server.views()
        console.log(server.views()); 
        next();
    }
};

myPlugin.register.attributes = {
    name: 'myPlugin',
    version: '1.0.0'
};

server.register( myPlugin, function(err) {

    if (err) {
        console.error('Failed to load a plugin:', err);
    }
} );

server.start(function () {

    console.log('Server running at:', server.info.uri);
});
4

3 回答 3

0

hapi 的人向我展示了方法......从 hapi 9 开始,需要视觉模块来装饰服务器并可以访问views方法。它现在工作正常!

于 2015-10-15T22:16:08.073 回答
0

hapi v10似乎有问题。尝试“npm i hapi@8.8.1”,该版本应该可以工作

于 2015-10-15T20:46:29.857 回答
0

从 hapi => 9.xx 开始,您需要先注册视觉插件才能使用 server.view 功能

于 2015-10-15T22:18:10.603 回答