You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
s2 2701eb3060 1.0.13 7 months ago
examples add an example 7 months ago
.editorconfig some boilerplate stuff 1 year ago
.eslintignore some boilerplate stuff 1 year ago
.eslintrc.json no-console 7 months ago
README.md add an example 1 year ago
ejs-render-remote.js just throw when called sync 7 months ago
package.json 1.0.13 7 months ago

README.md

ejs-render-remote

ejs remote client side includes.

html = ejs.rr('sayhello.ejs', {name: 'Simon'});

Quick start

  1. Install with npm i ejs-render-remote
  2. Include this script
    <script src="node_modules/ejs-render-remote/ejs-render-remote.js"></script>
    
  3. Create a file with your template, for example templates/hello-world.ejs containing hello <%= name %>!
  4. Render the remote template:
    someDomelement.outerHTML = ejs.rr('templates/hello-world.ejs', {name: 'Simon'});
    

Examples

See examples folder.

api

ejs.rr(templateUrl, data)

ejs.rr (render remote) renders the remote template. It makes an ajax call to fetch the template and then ejs.renders it.
The resulting ejs template function is cached, so the second time this function is invoked for that same template, ejs.rr returns the rendered template synchronously.

ejs.preloadTemplate(templateUrl)

Since ejs.rr is async, you can call ejs.preloadTemplate before invoking ejs.rr to warm the template cache up for that templateUrl.
By doing so the call to ejs.rr will return the rendered template string right away.