在 JavaScript 中导入同级工具类文件需用 ./ 开头的相对路径并显式写 .js 后缀,如 import { helper } from './utils.js';导出方式须匹配导入语法,常见错误包括路径缺失 ./、后缀省略、HTML 未加 type="module" 或导入名不匹配。

在 JavaScript 中,用 import 导入同级目录的工具类文件,关键在于写对相对路径,且确保文件扩展名(通常是 .js)显式写出(ESM 规范要求)。
路径写法:用 ./ 开头
同级目录意味着和当前文件在同一文件夹下,必须以 ./ 开头,不能省略。例如:
- 当前文件是
src/main.js,要导入同级的utils.js→ 写成:import { helper } from './utils.js'; - 不能写成
import { helper } from 'utils.js'(会被当作模块名,报错) - 也不能写成
import { helper } from 'utils'(缺少扩展名,ESM 不认)
导出方式要匹配导入方式
确保工具类文件用了正确的 export 语法:
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
- 如果
utils.js中写的是export function formatTime() { ... },就用import { formatTime } from './utils.js'; - 如果写的是
export default function() { ... },就用import formatTime from './utils.js';(无大括号) - 混合导出也支持:
export default class Utils {...}; export const VERSION = '1.0';→import Utils, { VERSION } from './utils.js';
常见报错及解决
遇到错误时,优先检查这几项:
立即学习“Java免费学习笔记(深入)”;
-
“Failed to resolve module specifier” → 路径没加
./,或扩展名缺失 -
“Cannot use import statement outside a module” → HTML 中没加
type="module",如<script type="module" src="./main.js"></script> -
“The requested module does not provide an export named 'xxx'” → 导入名和
export名不一致,或导出是 default 但用了命名导入
小技巧:统一用 .js 后缀,避免歧义
即使在 Node.js 14+ 或现代浏览器中支持省略后缀,也建议始终写全 .js:
- 更明确,减少调试时间
- 兼容性更好(比如某些构建工具或旧版环境)
- 编辑器和 IDE 补全、跳转更稳定

















