makemehapi
Version:
Self guided workshops to teach you about hapi.
55 lines (42 loc) • 1.75 kB
Markdown
ビューエクササイズのテンプレートを使用し、'`/?name=Helping&suffix=!`'への
リクエストに応答するサーバーを作成します。
今回はクエリパラメータを直接テンプレートで使用するのではなく、'`helpers/helper.js`'
にヘルパーを作成し、このヘルパーをテンプレート中で使用してクエリパラメータ'`name`'
を出力します。
```html
<html>
<head><title>Hello Helping!</title></head>
<body>
Hello Helping!
</body>
</html>
```
ヘルパーでクエリパラメータ'`name`'と'`suffix`'を結合して下さい。
-----------------------------------------------------------------
## ヒント
テンプレートを使用するので、'`@hapi/vision`'プラグインを登録していることを
確認して下さい。
ヘルパーはテンプレートコンテキストやその他の入力を使用し、テンプレート中で
変換・その他のデータ操作を行う関数です。
ヘルパーのパスはサーバーオプションで指定することが出来ます。指定された
ディレクトリ中にある全ての'`.js'`ファイルがロードされます、ファイル名が
ヘルパー名となります。
```js
var options = {
views: {
...
helpersPath: 'helpers'
}
};
```
各ファイルは'`function(context)`'の形式の関数を1つだけエクスポートする
必要があります。この関数の返り値は文字列です。
```
module.exports = function(context) {
return context.data.root.query.foo;
}
```
このヘルパーファンクションはテンプレート中で以下のように使用します。
```html
<div>{{helper}}</div>
```