当前位置: 首页 > Web前端 > CSS

前端压缩工具

时间:2023-03-31 13:32:52 CSS

野子电竞数据官网改版https://www.xxe.io/全新登场介绍webpack和gulp以及在项目中的具体使用现在很多网页其实都可以算是功能丰富的应用,它们都有复杂的javascript代码以及很多的依赖包,为了简化开发的复杂度,模块化有很多实用的方法:将复杂的程序提炼成小文件,类似于typescript,一种基于js的开发语言,可以简化我们的开发,然后可以使用bable之类的工具将其转换成js,这是一种浏览器可以识别的语言,比如Sass、less等css预处理器。一些浏览器不能直接运行的语言,打包成适合浏览器使用Babel编译js平台的格式,可以使用下一代es6和es7来使用基于js扩展的语言,比如JSXreact组织的module这个方法写在不同的文件中,使用script标签加载common.jsnode.js使用这个方法amd加载require.js使用这个模式es6模块webpackwebpack功能丰富的插件方便大型加载数量Publisher,包括加载各种静态资源Codesplitting,提供按需加载的能力发布工具webpack的优点是可以用commonjs的形式编写脚本,同时也全面支持amd和cmd,方便旧项目的代码迁移可以模块化不仅仅是js。开发简单,可以替代grunt和gulp的部分工作,比如图片打包压缩成base64。插件机制完善了webpack的属性值入口。入口文件输出:定义构造后的输出文件。resloveresolve属性中的extensions数组用于配置程序可以补全哪些文件后缀。该插件提供了丰富的组件以满足不同的需求。类库的源代码内置在运行时文件contextGrunt配置中注册Task('default',[]);}123456grunt插件介绍contrib-jshintjs语法错误调查contrib-watch实时监控文件变化调用相应任务重新执行contrib-cleancontrib-copyconcatkarma前端自动化测试工具uglify插件uglify:{options:{stripBanner:true,banner:},build:{src:dest}}initConfiggrunt.loadNpmTasks('grunt-contrib-ugify');grunt.registerTask('default','ugify');1234567891011121314banner:也就是在生成的压缩文件第一行加一句说明pkg可以获取package.json的内容build:配置源文件和压缩文件,也就是指定谁是压缩后生成谁jshintjshint:{build:['Gruntfile.js','src/.js'],options:{jshintrc:'.jshintrc'}}123456使用watch插件watch:{build:{files:['src/.js','src/.css'],tasks:['jshint','uglify'],options:{spawn:false}}}1234567gulpgulpfile.jsgulp配置文件vargulp=require('gulp')varless=require('gulp-less')gulp.task('testLess',function(){gulp.src=('src/less/index.less').pip(less()).pip(gulp.dest('src/css'))});//定义默认任务,让gulp监听文件变化自动执行gulp.task('default',['watch'],function(){gulp.watch('sass/.scss',['sass']);});123456789101112gulp通用插件js压缩vargulp=require('gulp');varrename=require('gulp-rename');varuglify=require('gulp-uglify');gulp.task('rename',function(){gulp.src('src//*.js').pipe(uglify()).pipe(重命名('idnex.min.js')).pipe(gulp.dest('build/js');});gulp.task('默认',['rename']);12345678910html压缩varminifyHtml=require('gulp-minify-html');gulp.task('minify-html',function(){gulp.src('src//.html')//待压缩的html文件.pipe(minifyHtml())//compression.pipe(gulp.dest('build'))});123456js文件合并varconcat=require('gulp-concat');gulp.task('concat',function(){gulp.src('src/**/.js')//待合并的文件pipe(concat('index.js'))//合并匹配的js文件和名为index.js.pipe(gulp.dest('build/js'))});123456gulp-lessvargulp=require('gulp'),varless=require("gulp-less");gulp.task('compile-less',function(){gulp.src('src/less/*.less').pipe(less()).pipe(gulp.dest('build/css'));12345});gulp.task('default',['compile-less']);