繁体   English   中英

如何为特定的node_module设置别名

[英]How to make an alias to a specific node_module

我们曾经有一个文件夹,其中有一堆打字稿模块。 现在,我们将该文件夹打包。

问题是现有代码对该文件夹使用webpack别名,现在我希望相同的别名指向特定的node_modules文件夹,但这不起作用。

alias: {
    x: path.resolve(__dirname, "node_modules/y")
    z: path.resolve(__dirname, "node_modules/y/z")
}

应该行吗?

编辑:确实可以。 只是打字稿还在抱怨,还需要将别名添加到tsconfig中。

这应该可以工作(Webpack配置的resolve键中的别名):

resolve: {
    alias: {
        x: path.resolve(__dirname, "node_modules/x")
    }
}

就是说,正如MonkeyTheDev所说,将x别名为x是没有意义的,因为这是默认行为。

在您的情况下,您不需要path.resolve(__ dirname,...),因为webpack会自动在node_modules文件夹中查找。

alias: {
    x: "y")
    z: "y/z")
}

Webpack将使用此代码在您的node_modules文件夹中查找“ y”和“ y / z”,并将它们别名为“ x”和“ z”。 那么您可以像这样import myModule from "z"import myModule from "z"

如果这不起作用,并且您正在命令行中使用webpack,则可能是webpack.config的位置不正确,它应该位于node_modules文件夹相同级别的根目录中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM