跳至内容

import/no-dynamic-require 限制

它做什么

禁止使用在模块参数中使用表达式的导入。这包括 requireimport 语句中的动态解析路径。

为什么这不好?

在导入语句中使用在运行时解析的表达式使得难以确定模块从何处导入。这会使代码导航变得复杂,并且阻碍静态分析工具,这些工具依赖于可预测的模块路径进行代码检查、捆绑和其他优化。

示例

此规则适用于不正确代码的示例

javascript
require(name);
require(`../${name}`);

此规则适用于正确代码的示例

javascript
require("../name");
require(`../name`);

参考

根据 MIT 许可证发布。