UNPKG

mp-lens

Version:

微信小程序分析工具 (Unused Code, Dependencies, Visualization)

22 lines (21 loc) 1.22 kB
/** * 检测项目中未被使用的资源文件(如图片)。 * * 检测方式: * - 首先通过 analyzeProject 获取所有可达(reachable)的源文件节点。 * - 在小程序根目录下(miniappRoot)glob 查找所有资源文件(如 png/jpg/svg 等)。 * - 仅用资源文件名(不含路径)作为关键词,使用 Aho-Corasick 算法批量在所有可达文件内容中做字符串匹配。 * - 只要资源文件名在任一可达文件内容中出现,即视为"被引用"。否则视为"未被引用"。 * * 局限性: * - 仅基于文件名字符串匹配,无法检测路径级别的精确引用。 * - 无法检测动态拼接、变量引用、base64、网络资源等间接用法。 * - 可能存在误报(如同名但非资源用途的字符串)或漏报(如资源名被拼接、加密、压缩等)。 * - 仅检测源码可达文件,不含 node_modules、构建产物等。 * * 适合用于大批量资源初步清理,结果建议人工复核。 * * @param projectRoot 项目根目录(绝对路径) * @returns 未被引用的资源文件绝对路径数组 */ export declare function findUnusedAssets(projectRoot: string): Promise<string[]>;