在AVA测试中使用Webpack别名

问题描述 投票:2回答:1

运行时,我需要将Webpack的别名包含到AVA中。

我使用webpack的resolve.alias访问src文件夹下的所有文件:

webpack.config.js

resolve: {
  alias: {
    '@': path.resolve(__dirname, 'src/'),
  },
},

然后是我自己的模块的@特殊前缀,如下所示:

my-module.js

import main from '@/view/main'

这是我的AVA配置:

package.json

"scripts": {
  "test-unit": "ava test/unit"
},
"ava": {
  "require": ["esm"]
},

是否可以像在这种摩卡解决方案中那样向package.json添加一些内容?https://stackoverflow.com/a/42989394/12361834

非常感谢您的时间和帮助!

javascript webpack alias package.json ava
1个回答
0
投票

如果我对您的理解很好,您可以使用link-module-alias npm软件包来完成。

1)将此添加到您的package.json

"scripts": {
  "postinstall": "link-module-alias",
  "preinstall": "command -v link-module-alias && link-module-alias clean || true"
  "test": "ava"
},
"_moduleAliases": {
  "@": "src"
}

2)npm i && npm test

如果需要更多详细信息,可以下载一个有效的示例here

希望此帮助:)

© www.soinside.com 2019 - 2024. All rights reserved.