UNPKG

module-migration-tool

Version:

分析项目文件依赖并迁移到新项目的工具

34 lines (29 loc) 920 B
/** * 别名路径解析器 */ const path = require("path") /** * 解析别名路径 * @param {string} importPath - 导入路径 * @param {Object} aliasConfig - 别名配置 * @param {string} projectRoot - 项目根目录 * @returns {string|null} 解析后的路径,无法解析则返回null */ function resolveAliasPath(importPath, aliasConfig, projectRoot) { // 检查是否匹配任何别名 for (const [alias, aliasPath] of Object.entries(aliasConfig)) { if (importPath.startsWith(alias)) { // 替换别名部分为实际路径 const relativePath = importPath.substring(alias.length) const resolvedPath = path.join( path.resolve(projectRoot, aliasPath), relativePath.startsWith("/") ? relativePath.substring(1) : relativePath ) return resolvedPath } } return null } module.exports = { resolveAliasPath, }