使用webpack + es6开发angular1.x的案例

  介绍

这篇文章给大家分享的是有关使用webpack + es6开发angular1.x的案例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

虽然,现在越来越多的人选择使用反应,vue以及喜欢的《忍者外传2》,但是依然存在相当一部分人在使用angular1.x开发。本文将介绍如何使用webpack + es6 + angular1.x + $ oclazyLoad实现动态加载。

<强> 1. webpack

webpack.config。js

var  path =,要求(& # 39;path & # 39;);      var  webpack =,要求(& # 39;webpack& # 39;);      var  ExtractTextPlugin =,要求(“extract-text-webpack-plugin");      module.exports =, {   ,,条目:{   ,,,,:,(   ,,,,,,,& # 39;babel-polyfill& # 39;   ,,,,,,,,& # 39;。/app/app.js& # 39;,,,,,,//引入文件   ,,,,,,   ,,,,,常见的:,   ,,,,,,,,,,& # 39;babel-polyfill& # 39;   ,,,,,,,,,,& # 39;角# 39;,,   ,,,,,,,,,,,& # 39;angular-ui-router& # 39;,,   ,,,,,,,,,,,& # 39;oclazyload& # 39;   ,,,,,,,)   ,,},   ,,,输出:{   ,,,,路径:,path.join (__dirname, & # 39;/wap # 39;),   ,,,,文件名:,& # 39;[名字]. js # 39;   ,,,,chunkFilename:, & # 39; [id] .build.js ? [chunkhash] & # 39;   ,,,,publicPath:, & # 39;/wap/& # 39;   ,,},   ,,,模块:{   ,,,,加载器:,   ,,,,,,{   ,,,,,,,,,,测试:/\ . js ?/美元,   ,,,,,,,,,,装载机:& # 39;ng-annotate-loader ! babel-loader& # 39;   ,,,,,,,,,排除:/node_modules/,,,,,,},   ,,,,,,{   ,,,,,,,测试:,/\ . html/美元,   ,,,,,,,装载机:,& # 39;raw-loader& # 39;   ,,,,,,,排除:/node_modules/,,,,,,},   ,,,,)   ,,},   ,,解决:{   ,,,,,,根:,(& # 39;node_modules& # 39;),   ,,,,,,扩展:,(& # 39;& # 39;,,& # 39;. js # 39;,, & # 39; . html # 39;,, & # 39; . json # 39;],   ,,,,,,modulesDirectories:, (& # 39; node_modules& # 39;),   ,,,,,,别名:,{}   ,,},   ,,外部:{},   插件才能:,   ,,,,,,,,,new  webpack.HotModuleReplacementPlugin (),   ,,,,,,,,,new  ExtractTextPlugin(& # 39;[名字]。[contenthash: 20]。css # 39;),   ,,,,,,,,,new  webpack.optimize.UglifyJsPlugin ({   ,,,,,,,,,,,,,,压缩:,{警告:假},   ,,,,,,,,,,,,,,sourceMap:真实   ,,,,,,,,,}),   ,,,,,,,,new  webpack.optimize.CommonsChunkPlugin(& # 39;常见# 39;,,& # 39;common.js& # 39;)   ,,)      }

<强> 2。模块

第一步,先引入角,以及相关模块,然后像es5中那样定义一个模块

应用程序。js

import  angular 得到& # 39;角# 39;;   import  uirouter 得到& # 39;angular-ui-router& # 39;;   import  ocLazyLoad 得到& # 39;oclazyLoad& # 39;;   angular.module(& # 39;应用# 39;,[,uirouter ocLazyLoad ])

<强>模块与模块之间引用

我们建立第二个模块头/索引。js

import  angularfrom  & # 39;角# 39;;   export  default  angular.module(& # 39;头# 39;,[]). name

修改app.js

import  header 得到& # 39;。/头# 39;   angular.module(& # 39;应用# 39;,[,uirouter ocLazyLoad ,,头])

模块的引用完成

<强> 3。控制器

假设在头目录下新增一个控制器

头/控制器。js

export  default  class  HeaderController  {   ,,,,consturctor () {   ,,,,,,,,this.home =, & # 39;头# 39;   ,,,,,}   }

引用控制器修改标题/索引。js

import  HeaderController 得到& # 39;。/控制器# 39;   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

使用webpack + es6开发angular1.x的案例