使用Eslint插入no-restricted-paths。 通常,这很好用,但现在我的行为异常。
我不希望能够将桌面组件导入移动设备。 而且我不想将移动组件导入桌面。
所以我创建了以下规则:
{
"target": "./src/react/desktop",
"from": "./src/react/mobile"
},
{
"target": "./src/react/mobile",
"from": "./src/react/desktop"
}
然后我对此进行了测试,将移动组件导入了桌面组件:
import ColorPalette from '../../mobile/design/components/ColorPalette';
并将桌面组件导入到我的手机中:
import {Button} from '../../../../desktop/Button';
然后运行ESLint看看我是否出错。
在某处我发现它确实适用于台式机,在导入移动ColorPalette时出现错误。
但是,导入桌面项目Button时没有出现错误。
我还尝试了其他文件,以及导入的不同变体。 例如:
import {IconButton} from '../../../../desktop/IconButton';
import {IconButton} from '../../../../desktop/IconButton/IconButton';
import IconButton from '../../../../desktop/IconButton';
import IconButton from '../../../../desktop/IconButton/IconButton';
没有一个触发错误。
我还检查了导入中的拼写以及配置文件中的拼写。所有这些都指向正确的文件和目录。
这种行为可能是什么原因?