angular+webpack2实战例子
发布时间 - 2026-01-11 01:14:39 点击率:次之前研究过webpack但是一直没用过,这次公司要做一个h5网站,正好拿来练练手,话说angular1x对移动端不是很友好,但主要是angular1x比较熟悉,上手快,开发也快,就没去考虑其他前端mvc框架。

好了webpack出了中文版以后,对于我们这些英语不是很好的来说真的是太棒了,话说angularjs啥时候也出个中文文档就更好了,webpack官网:https://doc.webpack-china.org/
右上角可以选择语言。
开始之前先看一下目录文件:
第一步:
首先要使用webpack需要先安装webpack,官网给出了好几中安装方式,就不多说了:
npm install --global webpack
因为我用的是webpack2 所以需要注意版本1x 到 2x 的配置差异,这里官网也给出了详细差异:https://doc.webpack-china.org/guides/migrating/
第二步webapck配置webpack.config.js:
const webpack = require('webpack'); //to access built-in plugins
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const config = {
entry: './app/app.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle-[chunkhash].js',
publicPath: "/mobile/dist/"
},
module: {
rules: [
{
test: /\.(js|jsx)$/,
use: 'babel-loader'
},
{
test: /\.css$/,
use: ['style-loader','css-loader']
},
{
test: /\.(png|jpg|jpeg|gif|woff)$/,
use: 'url-loader?limit=4192&name=[name].[ext]'
},
]
},
plugins:[
new HtmlWebpackPlugin({ //自动生成Html
template:'./app/view/index.html',
filename:'../app/index.html',
inject:'body'
})
]
};
module.exports = config;
这里需要说的是entry: './app/app.js' 是入口文件,所有的 js代码都通过入口文件加载,我这里就只用了 app.js ,但是也可以设置多个入口文件。
output: 设置输出的路径和文件,这里我是将所有的 js 压缩到了bundle.js中,这里也是可以设置压缩到多个文件的,文件后面我设置了 hash 值主要考虑浏览器缓存问题,module: 就是配置js css html 打包压缩的规则,这里写法和 webpack1x 有较大差异,还需注意。
plugins: 插件,webpack 有很多内置插件,HtmlWebpackPlugin 是动态生成html的一个内置插件,主要的作用是可以动态的把压缩后带有 hash 值的js动态插入到 html 中。
配置就暂时说到这里,然后再看看我们的入口文件,app.js,
var angular = require('angular');// 引入angular
var urlRouterProvider = require('angular-ui-router');
var uiLoad = require('angular-ui-load');
var $jq = require('jquery');
var animate = require('angular-animate');
var ngModule = angular.module('app',['ui.router','ui.load','ngAnimate']); // 创建app
require('./factory.js')(ngModule,$jq);// 公共方法封装
require('./route.js')(ngModule);// 引入路由文件
require('./directives.js')(ngModule,$jq);// 组件
require('./controller.js')(ngModule);// 控制器
require('./css/style.css');// 引入样式文件
这里主要把js依赖文件引入,然后把angular的路由和逻辑处理的js引入,方便前端模块化编程,注视比较清晰就不多说了。单独的js模块直接按照原来的写就ok了 区别就是在最外层写一个module.exports = function(ngModule){}
项目代码:https://github.com/wangbaogui123/angular-webpack2.git
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# webpack
# angular
# angular2
# angularjs
# 详解webpack+es6+angular1.x项目构建
# Webpack 实现 AngularJS 的延迟加载
# 详解用webpack2搭建angular2的项目
# 的是
# 出了
# 官网
# 好了
# 多个
# 说了
# 不多
# 我是
# 很好
# 有很多
# 不是很
# 说到
# 我用
# 要做
# 英语
# 就更
# 可以选择
# 也给
# 第二步
# 还需
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
网站建设整体流程解析,建站其实很容易!
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
电视网站制作tvbox接口,云海电视怎样自定义添加电视源?
Laravel如何处理异常和错误?(Handler示例)
百度浏览器网页无法复制文字怎么办 百度浏览器复制修复
HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】
Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
Laravel API资源类怎么用_Laravel API Resource数据转换
Windows10如何更改计算机工作组_Win10系统属性修改Workgroup
WEB开发之注册页面验证码倒计时代码的实现
Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】
Android Socket接口实现即时通讯实例代码
谷歌Google入口永久地址_Google搜索引擎官网首页永久入口
js实现点击每个li节点,都弹出其文本值及修改
小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像
米侠浏览器网页背景异常怎么办 米侠显示修复
如何快速搭建高效可靠的建站解决方案?
公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?
html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】
详解阿里云nginx服务器多站点的配置
Laravel如何使用Telescope进行调试?(安装和使用教程)
详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】
如何在万网ECS上快速搭建专属网站?
Laravel Octane如何提升性能_使用Laravel Octane加速你的应用
网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?
如何快速搭建支持数据库操作的智能建站平台?
Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】
免费视频制作网站,更新又快又好的免费电影网站?
如何在阿里云域名上完成建站全流程?
bing浏览器学术搜索入口_bing学术文献检索地址
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
JS实现鼠标移上去显示图片或微信二维码
如何在IIS中配置站点IP、端口及主机头?
香港服务器租用费用高吗?如何避免常见误区?
如何在新浪SAE免费搭建个人博客?
Laravel怎么实现微信登录_Laravel Socialite第三方登录集成
Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】
深圳网站制作培训,深圳哪些招聘网站比较好?
网站制作软件有哪些,制图软件有哪些?
Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】
微信小程序 配置文件详细介绍
如何快速搭建二级域名独立网站?
微信小程序 五星评分(包括半颗星评分)实例代码
如何快速上传自定义模板至建站之星?
Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践
Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询

