Poy*_*man 11 import alias require node.js
我有一个使用node.js v16的项目,越来越多的npm库不再与require兼容,需要与import一起使用。
到目前为止,我一直在使用 package.json 将我的根目录作为别名
// package.json
"dependencies": {
"~src": "file:.",
}
Run Code Online (Sandbox Code Playgroud)
在我的源代码中
const someCode = require('~src/absolute/path/someCode');
Run Code Online (Sandbox Code Playgroud)
这不适用于导入,并且通过我所做的测试,我还没有找到任何解决方案使其适用于导入。
你已经遇到过这样的问题吗?并找到了解决方案?
GOT*_*O 0 15
我相信在当前版本的 Node 中为文件夹添加别名的首选方法是使用subpath imports。
例如,您可以将根文件夹别名为#src(导入映射必须始终以 开头#)。为此,请在 package.json 中添加以下导入部分:
"imports": {
"#src/*": "./*.js"
}
Run Code Online (Sandbox Code Playgroud)
现在,假设您的包中有一个文件some/path/someCode.js,您可以像这样导入它:
import someCode from '#src/some/path/someCode';
Run Code Online (Sandbox Code Playgroud)
您还可以使用相同的语法映射子文件夹:
"imports": {
"#src/*": "./*.js",
"#somepath/*": "./some/path/*.js"
}
Run Code Online (Sandbox Code Playgroud)
并在导入文件中:
import someCode from '#somepath/someCode';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16860 次 |
| 最近记录: |