Open In App

Lodash _.template() Method

Improve
Improve
Like Article
Like
Save
Share
Report

Lodash _.template() method is used to create a template function that is compiled and can interpolate properties of data in interpolate delimiters, execute JavaScript in evaluate delimiters, and HTML-escape interpolated properties of data in escape delimiters. Moreover, data properties are retrieved in the template as free variables. 

Syntax:

_.template([string=''], [options={}]);

Parameters:

  • string: It is a string that would be used as the template. It is an optional value.
  • options: It is an object that can be used to modify the behavior of the method. It is an optional value.
    • options.interpolate: It is a regular expression that specifies the HTML interpolate delimiter.
    • options.evaluate: It is a regular expression that specifies the HTML evaluate delimiter.
    • options.escape: It is a regular expression that specifies the HTML escape delimiter.
    • options.imports: It is an object which is to be imported as free variables into the template.
    • options.sourceURL: It is a string that denotes the source URL of the compiled template.
    • options.variable: It is a string that denotes the variable name of the data object.

Return Value:

This method returns the compiled template function.

Example 1: In this example, we are passing a string into the _.template() method.

Javascript




// Requiring lodash library
const _ = require('lodash');
 
// Using the _.template() method to
// create a compiled template using
// the "interpolate" delimiter
let comptempl =
    _.template('Hi <%= author%>!');
 
// Assigning the value to the 
// interpolate delimiter
let result =
    comptempl({ 'author': 'Nidhi' });
 
// Displays output
console.log(result);


Output:

Hi Nidhi!

Example 2: In this example, we are passing a string into the _.template() method. and printing the ‘geek’ into the console.

Javascript




// Requiring lodash library
const _ = require('lodash');
 
// Using the _.template() method to
// create a compiled template using
// the internal print function in
// the "evaluate" delimiter
let comptempl = _.template(
    '<% print("hey " + geek); %>...'
);
 
// Assigning value to the evaluate delimiter
let result =
    comptempl({ 'geek': 'Nisha' });
 
// Displays output
console.log(result);


Output:

hey Nisha...

Example 3: In this example, we are passing a string into the _.template() method. The forEach() method is used as the evaluate delimiter in order to generate HTML as output.

Javascript




// Requiring lodash library
const _ = require("lodash");
 
// Using the template() method with
// additional parameters
let compiled_temp = _.template(
    "<% _.forEach(students, function(students) " +
    "{ %><li><b><%- students %></b></li><% }); %>"
)({ students: ["Rahul", "Rohit"] });
 
// Displays the output
console.log(compiled_temp);


Output:

<li><b>Rahul</b></li><li><b>Rohit</b></li>


Last Updated : 20 Oct, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads