Javascript TypeError:构造函数集需要';新';
开玩笑地给出我的测试套件,结果是“TypeError:构造函数集需要‘new’” .LRC配置为:Javascript TypeError:构造函数集需要';新';,javascript,ecmascript-6,jestjs,babeljs,babel-jest,Javascript,Ecmascript 6,Jestjs,Babeljs,Babel Jest,开玩笑地给出我的测试套件,结果是“TypeError:构造函数集需要‘new’” .LRC配置为: { "presets": [["env", { "modules": false }]], "env": { "test": { "presets": [["env"]] } } } 测试套件: test('构造函数集需要“new”,()=>{ 类扩展集{ 构造函数(…arg){ 超级(…arg); 本条增补(10); } } 常数a=新的a([1,2])
{
"presets": [["env", { "modules": false }]],
"env": {
"test": {
"presets": [["env"]]
}
}
}
测试套件:
test('构造函数集需要“new”,()=>{
类扩展集{
构造函数(…arg){
超级(…arg);
本条增补(10);
}
}
常数a=新的a([1,2]);
期望([…a][2])。托夸尔(10);
});
预计该测试将通过。相反,会出现以下错误:
TypeError: Constructor Set requires 'new'
at A.Set (<anonymous>)
1 | test('Constructor Set requires "new"', () => {
2 | class A extends Set {
> 3 | constructor(...arg) {
| ^
4 | super(...arg);
5 | this.add(10);
6 | }
TypeError:构造函数集要求“新建”
在A.集合()
1 |测试('构造函数集需要“新建”,()=>{
2 | A类扩展集{
>3 |构造函数(…arg){
| ^
4 |超级(…arg);
5 |本条增补(10);
6 | }
要解决此问题,必须为预设的env
插件设置目标。对于jest
,它是节点
(可以将其放置在.bybelrc
的测试“
部分)
如果设置
“预设值”:[“env”]
。删除额外的方括号没有帮助。
"env": {
"test": {
"presets": [["env", { "targets": { "node": true } }]]
}
}