A simple and customizable Javascript string template.
var Template = require("@huiyu/string-template")
var template = new Template("Hello, ${target}")
template.render({target: "world"}) // -> "Hello, world"var template = new Template("${person.name}'s age is ${person.age}")
template.render({
person: {
name: "Jack".
age: 40
}
}) // -> "Jack's age is 40"var template = new Template("${company.employees[1].name}'s age is ${company.employees[1].age}")
template.render({
compnay: {
employees: [
{ name: "Jack", age: 40 },
{ name: "Hugo", age: 25 }
]
}
}) // -> "Hugo's age is 25"template = new Template("Hello: \\${target}")
template.render({target: "world"}) // -> "Hello, ${target}"var template = new Template("Hello, ${target}", {
missingKeyReplacement: "world"
})
template.render({target: "javascript"}) // -> "Hello, javascript"
template.render({}) // -> "Hello, world"
template = new Template("Hello, ${target}")
template.render({}) // -> throw TypeErrorvar template = new Template("Hello, $${target}", {
escapeChar: "$"
})
template.render({target: "world"}) // -> "Hello, ${target}"var template = new Template("Hello, $[target]", {
macroStart: "$[",
macroEnd: "]"
})
template.render({target: "world"}) // -> "Hello, worldvar template = new Template("Hello, ${target}")
template.render({
target: "${person.name}",
person: {
name: "Jack"
}
}) // -> "Hello, Jack"MIT