不能让 Parcel + Babel 7 + Jest 一起工作

Can't make Parcel + Babel 7 + Jest work together

我在使用相同的 Parcel、Jest 和 Babel 时遇到问题 .babelrc

包裹版本:1.11.0

开玩笑版本:24.0.0

节点:v10.5.0

平台:Win 10

.babelrc

{
    "env": {
        "development": {
            "plugins": [
                [
                    "@babel/plugin-transform-runtime",
                    {
                        "corejs": 2
                    }
                ]
            ]
        },
        "test": {
        }
    },
}

如果我将 plugins 部分移动到 JSON 的根目录,它可以与网络应用程序一起正常工作,但是由于某些原因,Parcel 或 Babel 无法识别开发环境,即使我在命令行中设置它。

如果 运行 没有环境设置的测试(具有如上所述的 env),那么我得到

 ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){import _Promise from "@babel/runtime-corejs2/core-js/promise";

开玩笑。

可能测试设置也不会被识别,它在没有 babel/plugin-transform-runtime

的情况下也能正常工作

使用这个 .babelrc 解决了它:

{
    "env": {
        "production": {
            "plugins": [
                [
                    "@babel/plugin-transform-runtime",
                    {
                        "corejs": 2
                    }
                ]
            ]
        },
        "development": {
            "plugins": [
                [
                    "@babel/plugin-transform-runtime",
                    {
                        "corejs": 2
                    }
                ]
            ]
        },
        "test": {
            "plugins": [
            ]
        }
    },
}