grunt之filerev、usemin】的更多相关文章

窃以为这两个插件是比较有用的,filerev是给js.css进行编码重命名,usemin修改html中被重命名的js.css文件的引用.另外说明下之前将concat.cssmin.uglify放在一篇中的原因,因为usemin会自动对引用中的css文件进行concat和cssmin,对js文件进行concat和uglify.也就是说,如果不是定制化需求,只是简单的合并和压缩,使用了usemin就不用配置concat.cssmin.uglify这些task了. filerev相对比较简单,更完fi…
yeoman/grunt-usemin 用来将 HTML 文件中(或者 templates/views)中没有优化的 script 和 stylesheets 替换为优化过的版本. usemin 暴露两个内置的任务,分别为: useminPrepare 为将指定文件中的 usemin block 转换为单独的一行(优化版本)准备配置.这通过为每个优化步骤生成名为generated 的子任务来完成. usemin 使用优化版本替换 usemin 块,如果在磁盘上可以找到 revisioned 版本…
在讲之前先谈谈大致步骤:安装nodejs -> 全局安装grunt -> 项目创建package.json --> 项目安装grunt以及grunt插件 -> 配置Gruntfile.js -> 运行任务 1.安装Node 我们开始之前需要安装Nodejs,如果没有安装的传送门 安装好了之后,查看是否安装成功,正常是这样的提示 这里建议npm换成淘宝的cnpm,速度杠杠的. 安装命令:  npm install cnpm -g  -registry=https://regis…
新手最好找个视频来看看, Grunt的配置及使用(压缩合并js/css) - 每天都记录一点点! - CSDN博客https://blog.csdn.net/playboyanta123/article/details/43230831 grunt-contrib-uglify - konghao - 博客园https://www.cnblogs.com/konghao8013/p/5989946.html Grunt 新手一日入门 | 于江水http://yujiangshui.com/gru…
Objectives and Outcomes In this exercise, you will continue to learn to use Grunt, the task runner. You will configure the Grunt file with a set of additional tasks to build your web project. At the end of this exercise, you will be able to: Configur…
ylbtech-Grunt:GruntFile.js 1.返回顶部 1. module.exports = function (grunt) { grunt.initConfig({ useminPrepare: { html: ['**/*.html', '!js/**/*.html', '!dist/**/*.html', '!node_modules/**/*.html', '!unpackage/**/*.html', '!g/tmp/**/*.html', '!s/tmp/**/*.h…
最近开始新项目,在项目构建上面寻找合适的东西,grunt,bower到发现yeoman;学习了下,把一些东西记录下来然留着以后用. 1.什么是Yeoman Yeoman是Google的团队和外部贡献者团队合作开发的,他的目标是通过Grunt(一个用于开发任务自动化的命令行工具)和Bower(一个HTML.CSS.Javascript和图片等前端资源的包管理器)的包装为开发者创建一个易用的工作流. Yeoman的目的不仅是要为新项目建立工作流,同时还是为了解决前端开发所面临的诸多严重问题,例如零散…
直接grunt serve读的css是.tmp/css/main.css 而这个文件不通过build生成出来是这样: /* Encoding::CompatibilityError: incompatible character encodings: GBK and UTF-8 Backtrace: C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/sass-3.4.23/lib/sass/util.rb:1185:in `absolute_path' C:/Ruby…
ylbtech-杂项-TMod:常见错误 1.返回顶部 1. 1.1. {Template Error} TypeError: dateDiff is not a function at Array.<anonymous> (http://localhost:8023/y/js/template.js:1616:15) 1.2. 2. 2.1. 2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   7.返回顶部   8.返回顶部   9.返回顶部   1…
最近用Webpack+npm scripts+Mongodb+Nodejs+React写了个后台项目,在用Webpack构建过程中遇到了许多坑,就写出来分享一下. 构建工具五花八门,想当年刚学会Grunt,Grunt就被淘汰了,取而代之的是Gulp,其任务流式的机制,有着逻辑清晰,灵活多变的特点,而且容易上手,相比Grunt真的要少写太多配置文件代码了,立马就学的风声水起,刚熟练Gulp,Webpack又如构建工具界的一颗新星冉冉升起,其独特的模块打包机制和各种各样好用的loader,让无数Co…
前端优化是尽量减少http请求,所以我们需要尽量合并压缩文件,然后调用压缩后的文件,比如多个css文件压缩成一个,多个js文件合并压缩等,usemin能够自动在html中使用压缩后的文件,达到上面的目的. 上图是完整打包后的文件目录,原始目录是assets,打包发布的文件是dist. gruntfile.js文件内容: module.exports = function(grunt) { grunt.config.init({ clean:{ src:"dist/" }, usemin…
心情不太好,正好这部分比较简单,记个流水账. ----------流水很清楚惜花这个责任,真的身份不过送运---------- clean.copy算是很重要也很简单的基本组件了. clean(V0.6.0)的options(github地址) force: 不懂,个人没测出啥区别 no-write: 为true时,做个样子打个log但不真正的删除文件,默认false copy(V0.7.0)的options(github地址) process: 处理文件字符流,接受Funtion(conten…
1. require('time-grunt')(grunt); Time how long tasks take. Can help when optimizing build times任务执行时间方便时间上的优化 2. require('jit-grunt')(grunt, { useminPrepare: 'grunt-usemin', ngtemplates: 'grunt-angular-templates', cdnify: 'grunt-google-cdn' }); 自动加载所…
/** * Created by lee on 2014.07.02 002. */ module.exports = function (grunt) { // 项目配置 grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), uglify: { options: { banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd")…
ylbtech-杂项-Grunt:grunt build 打包和常见错误 1. 安装.打包返回顶部 1. npm WARN deprecated coffee-script@: CoffeeScript on NPM has moved to "coff eescript" (no hyphen) C:\Users\Administrator\AppData\Roaming\npm\grunt -> C:\Users\Administrator\AppDa ta\Roaming\…
ylbtech-Grunt:常见错误 1.返回顶部 1. D:\lab6\DS.JZB.Web>grunt build Running "clean:dist" (clean) task >> path cleaned. Running "exec:genGTmpl" (exec) task Error: directory does not exist >> Exited with code: . >> Error exe…
相关插件的引用: grunt-usemin  对页面的操作 grunt-contrib-cssmin  压缩css load-grunt-tasks 瘦身gruntfile grunt-rev给md5加密 实际的使用场景:压缩css文件到指定目录,并且更改页面引用的外链(这里以css为例). 情景一:html页面与要操作的css在同一目录下,且也与操作后的css在同一目录下. **这里使用npm中的注释方式来操作外链的,扩展性很不好. Gruntfile.js内容如下: module.expor…
安装 CLI npm install -g grunt-cli//全局安装 npm init //初始化package.json npm init   命令会创建一个基本的package.json文件. npm install grunt --save-dev npm install grunt-contrib-jshint --save-dev .......//安装你需要的依赖 安装完以后在package.json的同级创建一个Gruntfile.js配置文件 配置如下 module.exp…
前端资源构建-Grunt 随着前端开发的复杂度越来越高,前端页面动辄上几十个js,十几个html页面.用户打开一个页面需要加载一堆的css,js,html文件,对于有大量用户的web应用来说,既消耗服务带宽,用户加载速度也很受影响.特别是现在大量的移动端web应用涌现出来,页面加载速度至关重要,所以对前端资源做压缩是必须做的工作.grunt就是nodejs平台上一个非常优秀的前端构建工具.他可以拼接.丑化.压缩前端资源,大大提升页面访问速度 下面简要介绍grunt构建环境在windows平台的搭…
一.grunt是基于nodejs的,所以首先我们需要安装node 二.全局安装grunt 可以参考 http://www.gruntjs.net/docs/getting-started/ 进行安装. 1.全局安装 npm install -g grunt-cli 2.进入当前项目根据配置文件 package.json 进行本地安装,或者直接把以前项目所有用过的本地安装文件直接复制到当前项目使用 3.任务设置 打开gruntfile.js进行设置 module.exports = functio…
grunt.initConfig方法 用于模块配置,它接受一个对象作为参数.该对象的成员与使用的同名模块一一对应. 每个目标的具体设置,需要参考该模板的文档.就cssmin来讲,minify目标的参数具体含义如下: expand:如果设为true,就表示下面文件名的占位符(即*号)都要扩展成具体的文件名. cwd:需要处理的文件(input)所在的目录. src:表示需要处理的文件.如果采用数组形式,数组的每一项就是一个文件名,可以使用通配符. dest:表示处理后的文件名或所在目录. ext:…
如果你的前端项目很小或都者项目不需要通过专门的运维同学走流水线上线部署的话,那么可以略过以下的繁文. ok,Let's go! 我们看看如何使用grunt来部署上线项目? 前端项目一般分为两种类型:The first,纯静态页面,都是html,类似WebApp(当然也有很多动态页面的WEBAPP): The second,包含一些动态页面,如jsp.php. asp.net 或者是一些别的web服务语言. 由于第二种类型的前端的项目居多,那么我们先从第二种类型的项目上入手,使用grunt来操作项…
周末有点懒,跑去看了<智取威虎山>,手撕鬼子的神剧情节被徐老怪一条回忆线就解释过去了,牛到极致尽是这种四两拨千斤的处理方式,手撕加分,四星推荐. -----------------------------闲话分割线----------------------------- concat.cssmin.uglify对应的分别是合并.css压缩.js压缩混淆,至于为什么把这三个放在一起,在后面的usemin模块会给出解释. concat(V0.5.0)的options(github地址) sepa…
下述给出了经常使用Grunt插件,并列举了部分插件演示样例: 插件名称 说明 Github地址 grunt-contrib-clean 清空文件和目录 https://github.com/gruntjs/grunt-contrib-clean grunt-contrib-copy 拷贝文件和目录 https://github.com/gruntjs/grunt-contrib-copy grunt-contrib-concat 连接.合并文件 https://github.com/gruntj…
grunt例子:https://github.com/Aquarius1993/gruntDemo grunt 实时刷新1:           1.安装chrome浏览器插件:liveReload           2.npm install grunt-contrib-watch connect-livereload --save-dev           3. //监听事件 watch: { js: { files: ['src/js/**/*.js'], tasks: ['clean…
grunt例子:https://github.com/Aquarius1993/gruntDemo 1.前提是已经有npm(可以通过安装nodejs实现) 2. npm update -g npm 更新npm 3.安装 CLI  npm isntall -g grunt-cli 4. 编写GRuntfile.js   usemin: Example: The following block(html文件里学院这样写) <!-- build:js scripts/site.js -->', &l…
module.exports = function(grunt){ //1.引入 grunt.loadNpmTasks('grunt-contrib-cssmin'); grunt.loadNpmTasks('grunt-contrib-htmlmin'); //2.设置任务: grunt.initConfig({ // //压缩CSS cssmin:{ yasuo:{ options:{ mangle:false }, expand: true, cwd: 'css',//压缩那个文件夹里的文…
前言 现在前端自动化已经是家常便饭,各种工具也是层出不穷,grunt.gulp.webpack是应用最广的三种工具,虽然grunt看似已垂垂老矣,但是以前写的很多项目一直用的就是grunt,温故方能知新,这里把grunt的基本操作再记录一下. grunt常用插件 开始使用grunt很简单,在项目的根目录中添加两份文件:package.json 和 Gruntfile.js.npm安装模块和插件的操作就不细说了,主要是在Gruntfile.js中填写配置代码.代码目录结构如下: 然后我们就来介绍最…
原文地址:初学seaJs模块化开发,利用grunt打包,减少http请求 未压缩合并的演示地址:demo2 学习seaJs的模块化开发,适合对seajs基础有所了解的同学看,目录结构 js — —dist   //压缩后的目标文件夹 —lib   //各个模块 —drag    //拖拽模块 —scale   //缩放模块 —seajs    //seajs库 —seajs_drag    //入口的主文件main.js —main.js /*——————————————————————————…
这个指南解释了如何使用 Gruntfile 来为你的项目配置task.如果你还不知道 Gruntfile 是什么,请先阅读 快速入门 指南并看看这个Gruntfile 实例. Grunt配置 Grunt的task配置都是在 Gruntfile 中的grunt.initConfig方法中指定的.此配置主要是以任务名称命名的属性,也可以包含其他任意数据.一旦这些代表任意数据的属性与任务所需要的属性相冲突,就将被忽略. 此外,由于这本身就是JavaScript,因此你不仅限于使用JSON:你可以在这里…