Package Exports
- angular-hot-loader
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (angular-hot-loader) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Angular Hot Loader
Webpack loader for Hot Module Replacement in Angular 1.x applications.
Now works only with UI Router with a specific app structure shown below.
Forked from Angular-HMR
Webpack setup
- Install loader:
- npm
npm install --save-dev angular-hot-loader
- yarn
yarn add --dev angular-hot-loader
- Add loader to webpack configuration:
- Webpack 1.x:
loaders: [
{
test: /\.js$/,
loader: 'angular-hot!...other loaders'
}
]
- Webpack 2.x:
rules: [
{
test: /\.js$/,
use: [
'angular-hot-loader',
// Any other loaders.
]
}
]
With options:
rules: [
{
test: /\.js$/,
use: [
{
loader: 'angular-hot-loader',
options: {
log: true
}
},
// Any other loaders.
]
}
]
Options
rootElement {String}
Default: [ng-app]
Specifies application DOM root element selector.
log {Boolean}
Default: false
Enables module output to console.
How it works
This will inject the new controller / template then reload the state in UI Router
Your app structure should be something like:
import MyFactory from './your-factory';
import MyCtrl from './your-controller';
import MyComponent from './your-component';
angular
.module('my-app', [ui.router])
.directive('MyDirective', reqire('MyDirective'))
.factory('MyFactory', MyFactory)
.controller('MyCtrl', MyCtrl)
.component('MyComponent', MyComponent);
and you save that the browser should refresh