首页 > 解决方案 > 在 Jest 中运行循环 ES6 导入时“超出最大调用堆栈大小”

问题描述

在为一些 ES6 模块编写一些测试套件时,我发现 Jest v26.6 在尝试执行一些循环导入时会出错。

问题可以归结为以下几点:

类A.mjs

import {B} from './ClassB.mjs';

class A {
    constructor()
    {
        //...
    }
}

B类.mjs

import {A} from './ClassA.mjs';

class B extends A {
    constructor()
    {
        super();

        // ...
    }
}

循环测试.js

import {B} from "./ClassB.mjs";

describe('Cyclic', () => {
    test('Cyclic', () => {
        // ...
    });
});

根据测试的导入,Jest 在其源的不同位置以“超出最大调用堆栈大小”错误消息退出。

是否有任何解决方案,任何已知的解决方法?

提前致谢。

标签: ecmascript-6jestjs

解决方案


推荐阅读