码迷,mamicode.com
首页 > Windows程序 > 详细

[Hapi.js] View engines

时间:2016-02-29 07:02:37      阅读:278      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!