Socket
Book a DemoInstallSign in
Socket

plugin-ng-template

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

plugin-ng-template

SystemJS / JSPM plugin for loading and caching angular templates

0.1.1
latest
Source
npmnpm
Version published
Weekly downloads
5
150%
Maintainers
1
Weekly downloads
 
Created
Source

plugin-ng-template

NPM Build

SystemJS / JSPM plugin for loading and caching angular templates

Inspired by ngtemplate-loader for Webpack.

Installation

Easiest to install and configure with JSPM.

Installing with JSPM via npm repo:

jspm install ng-template=npm:plugin-ng-template

Installing with JSPM via github repo:

jspm install ng-template=github:jamespamplin/plugin-ng-template

Usage

Importing or requiring an angular html template with !ng-template appended to the end will invoke the plugin, and load the html source into angular's $templateCache.

// ES6 angular module
import angular from 'angular';

import myTemplate from 'my-template.html!ng-template';

export default angular.module( 'myModule', [] )
  .directive( 'myDirective', function() {
    return {
      templateUrl: myTemplate.templateUrl,
      // ...
    };
  } );

The above syntax uses the templateUrl property which is exported from the loaded template. The templateUrl property stores the url which was used to cache the template in the $templateCache.

The cache is global, and can be used anywhere a template URL is used, such as in an ng-include or in routes.

// File: app.js
import angular from 'angular';
import 'angular-route';

import mainTemplate from 'templates/main-template.html';
import 'templates/other-template.html';

angular.module( 'myApp', [ 'ngRoute' ] )
  .config( function( $routeProvider ) {
    $routeProvider
      .when( '/', {
        templateUrl: mainTemplate.templateUrl,
        controller: 'MainController'
      } )
  } );
<!-- File: templates/main-template.html -->
<div ng-include=" 'templates/other-template.html' "></div>

Options

serverRelative

By default, all template URLs will be derived from the baseURL as its configured by SystemJS.

System.config( { baseURL: '/assets' } );

For the above config, the template file: /assets/templates/my-template.html will be cached as templates/my-template.html.

<div ng-include=" 'templates/my-template.html' "></div>

To use a server relative URL instead, set:

System.config( {
  ngTemplatePlugin: {
    serverRelative: true
  }
} );

This will ensure all templates are cached against their server relative url.

<div ng-include=" '/assets/templates/my-template.html' "></div>

Keywords

ng-template

FAQs

Package last updated on 31 Aug 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.