Skip to content

jonschlinkert/create-frame

Repository files navigation

create-frame NPM version NPM downloads Build Status

Easily add private variables to handlebars block helpers.

Install

Install with npm:

$ npm install --save create-frame

Usage

var createFrame = require('create-frame');

Example

Create private variables from options hash arguments.

Template

The @post variable inside the block is created by the post hash argument. So the context of @post is the this object that is passed to the block.

{{#block post=this}}
<h1>{{@post.title}}</h1>
{{/block}}

Helper

The following helper uses createFrame, then it extends the "frame" with hash arguments.

handlebars.registerHelper('block', function (options) {
  var frame = createFrame(options.data);
  // extend the frame with hash arguments
  frame.extend(options.hash);
  return options.fn(options, {data: frame});
});

var fn = handlebars.compile(str);
fn({title: 'My Blog Post'});

About

Related projects

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Building docs

(This document was generated by verb-generate-readme (a verb generator), please don't edit the readme directly. Any changes to the readme must be made in .verb.md.)

To generate the readme and API documentation with verb:

$ npm install -g verb verb-generate-readme && verb

Running tests

Install dev dependencies:

$ npm install -d && npm test

Author

Jon Schlinkert

License

Copyright © 2016, Jon Schlinkert. Released under the MIT license.


This file was generated by verb, v0.9.0, on July 21, 2016.

About

Easily add private variables to handlebars block helpers.

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published