先看一下我整个项目的文件目录截图(dist文件夹是项目压缩后的文件)

1、正常情况下,仅仅使用angular+require,初次访问index.html,浏览器会加载:

main.js里面配置的require插件模块+路由初始化默认模块(蓝色为默认路由模块)

2、使用r.js,算是require的一个高阶应用

(1)首先,下载r.js,下载链接:http://requirejs.org/docs/download.html#rjs

(2)将r.js放在项目根目录下

(3)项目根目录下,新建一个build.js

3、配置build.js

这里直接拷贝我项目的build.js

({appDir: './',
    baseUrl: './js',
    dir: '../grunt_test/dist',
    modules: [{name: 'main'
        }],
    fileExclusionRegExp: /^(r|build)\.js$/,
    optimizeCss: 'standard',
    //重点设置,防止压缩后变量名报错
    removeCombined: true,
    optimize: "uglify",
    uglify: {mangle: false  //false 不混淆变量名
    },
    findNestedDependencies: true,
    //
    paths: {app: 'app',
        angular: 'lib/angular/angular',
        'angular-ui-router': 'lib/angular-ui-router/angular-ui-router',
        uiBootstrapTpl: 'lib/angular-bootstrap/ui-bootstrap-tpls',
        jquery:'lib/jquery/jquery-1.11.3.min',
        bootstrap:'lib/bootstrap/bootstrap'
    },
    shim: {angular: {exports: 'angular'
        },
        uiBootstrapTpl: ['angular'
        ],
        'angular-ui-router': ['angular'
        ],
        bootstrap:['jquery'
        ]}
})

说明一下重点的配置项:

dir:压缩后的项目输入目录

有注释的地方,需要注意,那是防止压缩后变量名报错。(例如不能识别$rootScope)

path和shim:直接拷贝main.js里面的配置就可以了

4、好了,配置好了之后,直接在命令行进入项目目录:

输入语句:

 node r.js -o build.js

5、这样,就把整个项目压缩到dist文件下了,可以参考文章头部的项目目录截图,此时再访问dist文件夹下的index.html

我不说话!!!!

r.js压缩angular项目,Angular+requirejs+rjs实现初始化http请求数的优化相关推荐

  1. RequireJs按需要加载angular模块和依赖,并且用r.js压缩打包js和css文件实现加载优化(图文)。

    RequireJS 是一个JavaScript模块加载器,使用RequireJS加载模块化脚本将提高代码的加载速度和质量.而且能保证其他依赖angular插件前提下才能使用的组件比如像自定义的指令和路 ...

  2. js和css和img,Node.js压缩web项目中的js,css和图片

    安装node.js 这个非常简单,下载下来,配置下环境变量就可以了,使用node -v查看是否安装成功 安装压缩需要的模块分别是uglify-js,clean-css,node-smushit 命令是 ...

  3. Node.js压缩web项目中的js,css和图片

    2019独角兽企业重金招聘Python工程师标准>>> 安装node.js 这个非常简单,下载下来,配置下环境变量就可以了,使用node -v查看是否安装成功 安装压缩需要的模块分别 ...

  4. Angular: 升级Angular 14到Angular 15

    N个月前写过一篇Angular: 升级Angular 13到Angular 14 的文章.现在Angular已经发布到了V16(非GA版本),那是时候把Angular项目升级到Angular 15了. ...

  5. Angular项目中,基于esriLoader+iframe实现不同页面调用3.x与4.x ArcGIS JS API

    场景: 现在有个项目同时涉及二维.三维地图功能,明确要求使用ArcGIS 平台.目前ArcGIS API For JS有两个系列3.x和4.x,3.x只能实现二维功能,4.x主要支持三维功能,同时也支 ...

  6. angular项目引入reveal.js

    angular项目引入reveal.js 一 背景 二 解决方案 1 引入reveal.js 2 在angular.json的styles中引入reveal.js的css样式,作为全局样式. 3 修改 ...

  7. Angular项目构建指南 - 不再为angular构建而犹豫不决(转)

    如果你不知道什么是Angular或者根本没听说过,那么我接下来所说的对你来说毫无益处,不过如果你打算以后会接触Angular或者干脆要涨涨姿势~读下去还是有点用的. Angular和它之前所出现的其余 ...

  8. angular项目整合到.net mvc中

    Webpack配置 第一步必然是要先得到前端项目的打包资源,由强大的webpack来完成,目标是将angular的所有依赖以及应用主代码分别打包到polyfill.js.vendor.js.main. ...

  9. RequireJS模块化后JS压缩合并

    使用RequireJS模块化后代码被拆分成多个JS文件了,在部署生产环境需要压缩合并,RequireJS提供了一个打包压缩工具r.js来对模块进行合并压缩.r.js非常强大,不但可以压缩js,css, ...

最新文章

  1. Spring Boot 2.x基础教程:Swagger静态API文档的生成
  2. 俄罗斯“指尖旋风”席卷南京
  3. 程序员过关斩将-- 喷一喷坑爹的面向UI编程
  4. 信守承诺:JAX-RS API的基于合同的测试
  5. 120万人同时在线考试,这么大的流量如何支撑
  6. 调整selinux状态为disabled
  7. 京东大数据研究院:智能马桶四年销量翻10倍
  8. 吴恩达深度学习2.2笔记_Improving Deep Neural Networks_优化算法
  9. java常用类实验报告总结_【Java基础】java常用类实验总结
  10. 搭建一个QQ机器人叫女友起床
  11. 狮子鱼小程序独立版安装配置教程
  12. 如何在Mac网页中长截图?苹果电脑网页截图怎么截长图?
  13. 华为机试题HJ106
  14. 学生用计算机如何算角度,如何用windows计算器计算角度的正弦值?
  15. stm32专题二十六:高级定时器介绍
  16. Java面试系列--HashMap
  17. 生成模型和判别模型学习
  18. HTML + Css实现页面特效
  19. 使用Bing转换器翻译IE 8中的语言
  20. react中实现取色器的效果React Color

热门文章

  1. iQOO5Pro和小米10至尊纪念版防水吗
  2. 怎么折腾怎么有。。。。。
  3. 三维点云开源数据集汇总
  4. Mac App Store 无法登录/无法连线
  5. Decode 是什么函数,功能是什么
  6. Iphone画饼图工具类
  7. php 伪造登入,某系统任意用户伪造登录
  8. java dtu 采集程序_一文教你用DTU主动采集,省去PLC、单片机、RTU等,节约成本
  9. 为什么零基础转“码”首选软件测试
  10. 2k和4k分辨率大小