Grunt学习——简化静态资源

注:此篇文章是《JavaScript Web应用开发》的学习笔记!


简化的目的和拼接类似,都是为了减轻网络连接的负担。但是不同的是,简化只是通过删除空白,缩短变量名,以及优化代码的句法树来缩减文件大小。要付出的代价便是简化后的代码几乎没有可读性。

还有一种是在服务器端做GZip压缩。这个我没试过,不过书上说,简化静态资源的效果较之更明显。

需要注意的是,虽然把代码弄乱了,但是别人仔细研究的话还是可以看明白的,所以不要把敏感代码放在前端。简化和拼接比较适合在发布的时候给最终用户使用,开发的话可能会影响效率哦。

使用grunt-contrib-uglify包简化JS文件。
执行grunt uglify命令


如果想进一步提升系统性能,可以先拼接后简化。这里介绍一下任务别名这个好用的函数。每当运行Grunt时, 你可以为其指定一个或多个任务, 这些任务用于告诉Grunt你想要它做什么事情。

grunt.registerTask(taskName, [description, ] taskList)

创建别名时可以提供描述信息,执行grunt –help命令时会显示这个信息。在taskList 中指定的每个任务都会按照其出现的顺序依次执行。taskList参数必须是一个任务数组。

这里只介绍普通的用法,深入了解请参考《Grunt中文文档 》。
http://www.kancloud.cn/manual/grunt/71452

需要注意的是,创建了任务别名后,配置任务时需将tasklist的任务都配置在同一个initConfig方法中配置。

grunt.initConfig({
      concat:{
          js:{
               files:{
                     'src/js/bundle.js':'src/js/**/*.js'
                     }
             }
      },

      uglify:{
          bundle:{
              files:{
                    'build/js/bundle.min.js':'src/js/bundle.js'
                    }
                 }
            }
      });

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值