首页 > 其他 > 详细

Grunt学习笔记【3】---- filter详解

时间:2018-09-27 16:02:23      阅读:171      评论:0      收藏:0      [点我收藏+]

本文主要讲配置任务中的filter,包括使用默认fs.Stats方法名和自定义过滤函数。

通过设置filter属性可以实现一些特殊处理逻辑。例如:要清理某个文件夹下的所有空文件夹,这时使用clean任务时,需要判断该文件夹下的哪些是文件,哪些是文件夹,只对空文件执行clean任务。

具体使用方法分为如下两种:

一 使用fs.Stats方法作为过滤函数

fs.stats是NodeJS的一个类,上边提供了很多对文件判断的方法,具体可以参考这里

如下将filter设置为‘isFile‘时,如果发现当前文件不是文件时,就不进行clean处理。

1 grunt.initConfig({
2   clean: {
3     foo: {
4       src: [‘tmp/**/*‘],
5       filter: ‘isFile‘,
6     },
7   },
8 });

二 自定义过滤函数

自定义过滤函数,如果过滤函数返回true,就对当前文件进行处理;返回值是false时,就不处理当前文件。

下边示例是清理tmp下边所有的空文件夹:

 1 grunt.initConfig({
 2   clean: {
 3     foo: {
 4       src: [‘tmp/**/*‘],
 5       filter: function(filepath) {
 6         return (grunt.file.isDir(filepath) && require(‘fs‘).readdirSync(filepath).length === 0);
 7       },
 8     },
 9   },
10 });

 

参考资料&内容来源:

Grunt官网:https://www.gruntjs.net/configuring-tasks

 

Grunt学习笔记【3】---- filter详解

原文:https://www.cnblogs.com/zhaoweikai/p/9713528.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!