var vm = this;
vm.countClick = 0;setTimeout(() => {
console.log('es6 today!')
}, 1000)setTimeout(function () {
console.log('es6 today!');
}, 1000);{ "presets": ["es2015"] }Specify babel-plugins:
npm install --save-dev babel-preset-es2015
Build System Dependency Bundler
<script src="js/routes.js"></script>
<script src="js/services.js"></script>
<script src="js/directives.js"></script>
<script src="js/services/authentication.js"></script>
<script src="js/utility.js"></script>
<script src="js/controllers/splashCtrl.js"></script>
<script src="js/controllers/introCtrl.js"></script>
<script src="js/controllers/dashboard/termsCtrl.js"></script>
<script src="js/controllers/loginCtrl.js"></script>
<script src="js/controllers/signup/verifyNumberCtrl.js"></script>
<script src="js/controllers/signup/verifyCodeCtrl.js"></script>
<script src="js/controllers/signup/createPinCtrl.js"></script>
<script src="js/controllers/signup/createPinConfirmCtrl.js"></script>
<script src="js/controllers/signup/successCtrl.js"></script>
<script src="js/controllers/userDocuments/scanBarCodeCtrl.js"></script>
<script src="js/controllers/userDocuments/uploadIDCtrl.js"></script>
<script src="js/controllers/userDocuments/previewIDCtrl.js"></script>
<script src="bundle.js"></script>Problem:
Solution:
module.exports = {
entry: './index.js',
output: {
filename: 'bundle.js',
path: './dist'
}
}webpack --config webpack.config.js --watchCLI:
import angular from 'angular'
import MainController from './MainController'
angular
.module('app', [])
.controller('mainController', MainController);
angular.bootstrap(document, ['app']);<script src="bundle.js"></script>Bundled:
module.exports = {
entry: './index.js',
output: {
filename: 'bundle.js',
path: './dist'
},
module: {
loaders: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: "babel-loader"
}
]
}
}
Transform a file before bundling step
import React from 'react'
import ReactDOM from 'react-dom'
import HomePageModal from './components/HomePageModal'
const Home = React.createClass({
getInitialState: function() {
return {
modalIsOpen: true,
}
},
closeModal(){
this.setState({modalIsOpen: false})
},
render: function() {
return (
<HomePageModal closeModal={this.closeModal} />
)
}
});
ReactDOM.render(<Home />, document.getElementById('advent-calendar'));