go-template-fn

1.1.0 • Public • Published

Go Template

String template and interpolation utility

codecov.io Code Coverage jsdoc donation

  • version: 1.1.0
  • license: GNU LGPLv3

Installation

npm i go-template-fn

or

yarn add go-template-fn

Usage

ES6

import template from 'go-template-fn'

const greet = template("Hello, ${name}");

greet({name: "John"}); // => Hello, John

Node

const template = require('go-template-fn');

const greet = template("Hello, ${name}");

greet({name: "John"}); // => Hello, John

Web browser

<script src="dist/go-template-fn.min.js"></script>
<script>
	const greet = template("Hello, ${name}");

	greet({name: "John"}); // => Hello, John
</script>

Documentation

Table of Contents

template

Creates a compiled template function that can interpolate values into placeholders in the template.

Parameters

  • strTemplate string The string template to compile.

  • options Object? The compilation options.

    • options.startTag string The start tag for a placeholder. (optional, default "${")
    • options.endTag string The end tag for a placeholder. (optional, default "}")
    • options.returnAsFragments boolean If true, returns the output as an array of fragments; if false, joins the fragments and returns as a concatenated string. (optional, default false)

Examples

const greet = template("Hello, ${name}");

greet({ name: "John" }); // => Hello, John

Custom tags

const greet = template("Hello, <%name%>", {startTag: "<%", endTag: "%>"});

greet({ name: "John" }); // => Hello, John

Returning the result as a fragments array

const greet = template("Hello, ${name}! You've turned ${age} today.", { returnAsFragments: true });
greet({ name: "John", age: 20 }); // => ["Hello, ", "John", "! You've turned ", 20, " today."]

Returns Function The compiled template function.

Meta

  • since: 1.0.0

Package Sidebar

Install

npm i go-template-fn

Weekly Downloads

1,173

Version

1.1.0

License

GNU LGPLv3

Unpacked Size

2.63 MB

Total Files

14

Last publish

Collaborators

  • fishgold.org