Code Monkey home page Code Monkey logo

angular-templatecache-webpack-plugin's Introduction

angular-templatecache-webpack-plugin

npm npm license

Speed up your AngularJS app by automatically combining, concatenating, registering and caching your AngularJS HTML templates in the $templateCache.

Install | Usage | Options and Defaults | License


⚠️ If you are a Laravel user, check out this laravel mix package ⚠️


Install

Install with npm or yarn

  npm i --save angular-templatecache-webpack-plugin
  yarn add angular-templatecache-webpack-plugin

Usage

This webpack plugin will combine all your angular .html templates and save to dist/templates.js (default filename). Just add the plugin to your webpack config as follows:

webpack.config.js

const AngularTemplateCacheWebpackPlugin = require('angular-templatecache-webpack-plugin');

module.exports = {
  plugins: [
    new AngularTemplateCacheWebpackPlugin({
        source: 'templates/**/*.html'
        /**
         * See options and defaults below for more details
         */
    })
  ]
}

This will generate a file dist/templates.js containing the following:

ℹ️ Sample output (prettified).

angular.module("templates").run([$templateCache,
  function($templateCache) {
    $templateCache.put("template-file-01.html",
      // content of template-file-01.html (escaped)
    );
    $templateCache.put("template-file-02.html",
      // content of template-file-02.html (escaped)
    );
    // etc...
  }
]);

Include this file in your app and AngularJS will use the $templateCache when available.

ℹ️ This plugin will NOT create a new AngularJS module by default, but use a module called templates. If you want to create a new module, set options.standalone to true.

Options and Defaults

Name Type Default Description
source {String} undefined Your html templates path/folder. You can also use glob patterns to use multiple files.
outputFilename {String} 'dist/templates.js' The path/filename.js where the output file should be saved.
root {String} undefined Prefix for template URLs.
module {String} 'templates' Name of the existing AngularJS module.
standalone {Boolean} false Create a new AngularJS module, instead of using an existing one.
escapeOptions {Object} {} An object with jsesc-options. See jsesc for more information.
templateHeader {String} *See below Override template header.
templateBody {String} *See below Override template body.
templateFooter {String} *See below Override template footer.

Default Templates

templateHeader:

'angular.module("<%= module %>"<%= standalone %>).run(["$templateCache", function($templateCache) {'

templateBody:

'$templateCache.put("<%= url %>","<%= contents %>");'

templateFooter:

'}]);'

License

MIT

angular-templatecache-webpack-plugin's People

Contributors

rafaelmussi avatar tiagojacobs avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.