UNPKG

1.23 kBJavaScriptView Raw
1/**
2 * 检查是否为需要过滤的文件
3 *
4 * @param {string} filePath 文件路径
5 * @returns
6 *
7 * @memberOf Watch
8 */
9module.exports = (filePath)=>{
10 const {path,getFileInfo} = {
11 path:require('path'),
12 getFileInfo:require('./getFileInfo')
13 };
14
15 //需要过滤的文件类型
16 let filterTypes = ['tmp','_mp','syd','ftg','gid','---','bak','old','chk','ms','diz','wbk','xlk','cdr_','nch'],
17
18 //需要过滤需要包含的目录
19 filterDirs = ['node_modules','.vscode','.fwsbackup','.temp'];
20
21 //检查是否为需要过滤的文件
22 let fileInfo = getFileInfo(filePath),
23 fileType = fileInfo.type,
24 fileName = fileInfo.name,
25 isFilterType = filterTypes.some((item,index)=>{
26 return '.'+item === fileType || fileName === '.DS_Store';
27 });
28 if(isFilterType){
29 return true;
30 };
31
32 //检查是否有需要过滤的目录
33 let filePathDirs = filePath.split(path.sep),
34 isFilterDir = filterDirs.some((item,index)=>{
35 return filePathDirs.some((dir,i)=>{
36 return dir.toLowerCase() === item;
37 });
38 });
39 if(isFilterDir){
40 return true;
41 };
42 return false;
43};
\No newline at end of file