摩卡+柴+jsdom Can't加载自定义模块目录

mocha+chai+jsdom-Can't load custom modules Directories

本文关键字:加载 自定义 模块 +jsdom Can 摩卡      更新时间:2023-09-26

我正在使用一个多入口点应用程序,它大量使用公共组件,我从webpack的解析部分加载了它(请参阅webpack文件)

webpack文件

resolve: {
    extensions: ['', '.js', '.css', '.scss', '.jsx', '.json'],
    modulesDirectories: ['node_modules', 'common']
}

但问题是,当我要测试该组件时,它不能从公共文件夹加载目录,因为我没有将其定义为模块目录,所以有没有办法在测试环境中加载自定义模块目录

我解决了这个问题,我们可以使用app-module-path包定义自定义模块路径

安装

npm install app-module-path --save

在文件中的require,在任何require()调用之前:

require('app-module-path').addPath(process.env.PWD + '/common');

然后您可以从/common/util/Base 导入您的组件

import Base from 'util/Base';