仅类型导入为何会影响模块副作用、声明产物与构建一致性
简答题中等858 次浏览
参考答案与解析
# 核心结论
import type 与 export type 明确表示依赖只存在于类型空间,常规输出时可以被擦除;普通导入和导出则可能代表运行时依赖,是否保留会受到源码用法、编译选项、模块格式和转译工具影响。它们不仅是代码风格差异,还会影响模块副作用是否执行、输出代码中是否存在运行时导入,以及声明文件如何引用外部类型。严格工程应显式区分类型依赖和副作用依赖,并让类型检查器、转译器、测试环境及打包器采用一致的模块策略。
import type { User } from "./model.js";
import "./register.js";
export function format(user:
