alias-to-config-plugin
Version:
Automatically generate jsconfig.json/tsconfig.json path mappings from Webpack/Vite alias configurations
36 lines • 1.46 kB
JavaScript
import ConfigGenerator from "./configGenerator.js";
/**
* Vite 插件函数:将Vite别名转换为 jsconfig/tsconfig 路径配置
* @param {Object} options - 配置生成器选项
* @param options.enable 是否启用插件 默认为true
* @param options.configPath jsconfig.json文件路径 默认为项目根目录下的jsconfig.json/tsconfig.json
* @param options.baseUrl 自定义baseUrl
* @param options.excludeAlias 排除的别名(不需要同步到jsconfig的别名)
* @param options.excludeAliasReg 排除的别名正则表达式
* @param options.excludeAliasPathReg 排除的路径正则表达式
* @returns Vite 插件对象
*/
function ViteAliasToConfigPlugin(options = {}) {
const generator = new ConfigGenerator(options);
return {
name: "vite-plugin-alias-to-config",
/**
* Vite 配置解析钩子
* @param config - Vite 配置对象
*/
configResolved(config) {
try {
// 获取 vite 配置中的别名(兼容对象或数组)
const alias = config.resolve?.alias || {};
// 生成或更新 jsconfig.json
generator.generateConfig(alias);
}
catch (error) {
console.error("ViteAliasToConfigPlugin error:", error);
}
},
};
}
export default ViteAliasToConfigPlugin;
export { ViteAliasToConfigPlugin };
//# sourceMappingURL=vite.js.map