这个问题主要基于react-admin
,因此是标签,但它可能在其他情况下也很有用。
所以我们有react-admin
哪个取决于@material-ui/core
. 这允许我在自己的代码中使用 Material UI,同时实现 UI,而不依赖于@material-ui/core
我自己。但是,我不能做的是使用来自 IDE(VSCode / Emacs + LSP)的任何帮助,例如我不能从@material-ui/core
.
我认为这种行为是正确且符合预期的,因为@material-ui/core
它不是我的项目的依赖项。但是,我仍然可以使用这种依赖,所以我希望我的工具知道这一点。将其添加为我自己的依赖项相当难看,因为我必须保持版本与react-admin
's 同步,这可能很麻烦,并且有点破坏了依赖项管理的全部意义。我尝试添加@material-ui/core
到我的 peerDependencies
,这似乎有点倒退,但令人惊讶的是,它对 VSCode 和 LSP 都有效。
所以问题是:在不向我的项目中添加一堆不需要的依赖项的情况下,重用子依赖项的正确方法是什么?