1 Star 0 Fork 6

YOYO/zego-express-webrtc-sample

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
tools.js 1.53 KB
一键复制 编辑 原始数据 按行查看 历史
BansheeHannibal 提交于 2020-04-17 23:28 . fix: window下无热更新问题
// eslint-disable-next-line @typescript-eslint/no-var-requires
const fs = require('fs');
// eslint-disable-next-line @typescript-eslint/no-var-requires
const path = require('path');
module.exports = function filterFileList (rootName, result, targetDirNames, unReadDirNames) {
//读取文件夹---->下一层目录list
let paths = fs.readdirSync(rootName);
//过滤指定文件夹以及子目录
if (targetDirNames)
paths = paths.filter(_path =>
targetDirNames.some(tdpath => path.resolve(rootName, _path).indexOf(tdpath) > -1),
);
//去除指定文件夹以及子目录
if (unReadDirNames && unReadDirNames.includes(rootName)) return;
//逐个读取文件夹下一层目录,并在读取到文件夹时递归,直到读取到文件为止
for (let i = 0; i < paths.length; i++) {
const _path = paths[i];
const _stats = fs.lstatSync(path.resolve(rootName, _path));
//console.log(path.resolve(rootName, _path), _stats.isDirectory(), _stats.size == 0);
if (_stats.isDirectory()) {
const subPaths = filterFileList(path.resolve(rootName, _path), result, targetDirNames, unReadDirNames);
//console.log('sub_paths', sub_paths);
} else if (_stats.size == 0) {
result.push(path.resolve(rootName, _path));
} else if (_stats.isFile) {
//console.log('file_path', path.resolve(rootName, _path));
result.push(path.resolve(rootName, _path));
}
}
//console.log(result);
return result;
};
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
JavaScript
1
https://gitee.com/TT52101/zego-express-webrtc-sample.git
git@gitee.com:TT52101/zego-express-webrtc-sample.git
TT52101
zego-express-webrtc-sample
zego-express-webrtc-sample
master

搜索帮助