首页 > Windows开发 > 详细

[Hapi.js] View engines

时间:2016-02-29 07:02:29      阅读:303      评论:0      收藏:0      [点我收藏+]

View engines, or template engines, allow you to maintain a clean separation between your presentation layer and the rest of your application. This post will demonstrate how to use the vision plugin with hapi to enable template support.

 

index.js
    server.register(require(‘vision‘), function(){
        server.views({
            engines: {
                hbs: require(handlebars)
            },
            relativeTo: __dirname,
            path: ‘views‘
        });


        server.route( {
            method: ‘GET‘,
            path: ‘/user/{username?}‘, 
            handler: function ( request, reply ) {
                var username = request.params.username ? request.params.username : "World";
                reply.view(‘home‘, {username: username})
            }
        } );
    });

home.hbs:

<h1>Hello, {{username}}!</h1>

 

 

view can also support layout, to do this, we only need to add :

        server.views({
            engines: {
                hbs: require(‘handlebars‘)
            },
            relativeTo: __dirname,
            path: ‘views‘,
            layout: true
        });

layout.hbs:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>I‘m hapi!</title>
    <style>
        * {
            font-family: ‘DejaVu Sans‘;
            font-weight: 100; color: #333;
        }
        h1 {
            margin: 40px; padding: 50px;
            text-align: center; background-color: #FA4;
            box-shadow: 10px 10px 25px 0px #888;
        }
    </style>
</head>
<body>
{{{content}}}
</body>
</html>

 

It will automaticlly wrap the content into the layout.hbs.

技术分享

[Hapi.js] View engines

原文:http://www.cnblogs.com/Answer1215/p/5226222.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!