riot-tmpl
npm i riot-tmpl

riot-tmpl

Riot template engine

by riot

3.0.8 (see all)License:MITTypeScript:Not Found
npm i riot-tmpl
Readme

Build Status Code Quality Coverage Status NPM version NPM downloads MIT License

Tmpl

The riot template engine

Installation

Npm

npm install riot-tmpl --save

Bower

From v2.4.2, bower is not supported.

Documentation

How it works?

Three ways:

  • Expressions: tmpl('{ value }', data). Returns the result of evaluated expression as a raw object.

  • Templates: tmpl('Hi { name } { surname }', data). Returns a string with evaluated expressions.

  • Filters: tmpl('{ show: !done, highlight: active }', data). Returns a space separated list of trueish keys (mainly used for setting html classes), e.g. "show highlight".

Template examples

tmpl('{ title || "Untitled" }', data)
tmpl('Results are { results ? "ready" : "loading" }', data)
tmpl('Today is { new Date() }', data)
tmpl('{ message.length > 140 && "Message is too long" }', data)
tmpl('This item got { Math.round(rating) } stars', data)
tmpl('<h1>{ title }</h1>{ body }', data)

Falsy expressions

In templates (as opposed to single expressions) all falsy values except zero (undefined/null/false) will default to empty string:

tmpl('{ undefined } - { false } - { null } - { 0 }', {})
// will return: " - - - 0"

tmpl('{}')                 // undefined
tmpl('{ false }', {})      // false
tmpl('{ null }', {})       // null
tmpl('{ 0 }', {})          // 0

Changes in v2.3

  • Brackets can not contain characters in the set [\x00-\x1F<>a-zA-Z0-9'",;\\]
  • No comments in expressions, the compiler is the only that strip comments
  • Attributes with expressions containing > must be quoted

See API and CHANGES for details.

Downloads/wk

5.3K

GitHub Stars

32

LAST COMMIT

5yrs ago

MAINTAINERS

1

CONTRIBUTORS

5

OPEN ISSUES

1

OPEN PRs

2
VersionTagPublished
3.0.8
latest
5yrs ago
No alternatives found
No tutorials found
Add a tutorial