从 babel 插件中排除除一个模块之外的所有模块

问题描述 投票:0回答:0

是否可以从 babel 插件中排除 node_modules 中的所有模块,除了一个?

这是我的 webpack 配置: 如您所见,我包含了

chart.js
pdfjs-dist
以使用 babel-loader 进行转译,所有其他 node_modules 都被排除在外

{
    test: /\.js$/,
    exclude: (_) =>
        /node_modules/.test(_) && !/node_modules\/chart\.js/.test(_) && !/node_modules\/pdfjs-dist/.test(_),
    loader: "babel-loader",
    options: {
        compact: true,
        cacheCompression: false,
        cacheDirectory: true
    }
},

还有我的 package.json

"babel": {
    "presets": [
        [
            "@babel/preset-env",
            {
                "debug": false,
                "useBuiltIns": "usage",
                "corejs": 3
            }
        ]
    ],
    "plugins": [
        "@babel/plugin-proposal-class-properties",
        "@babel/plugin-transform-object-assign",
        "@babel/plugin-transform-modules-commonjs"
    ]
},

所以我需要的是

@babel/plugin-transform-modules-commonjs
仅用于
pdfjs-dist
但不用于
chart.js
这是否可能? (其他 2 个插件可用于两者)

致以诚挚的问候

javascript webpack babeljs babel-loader transpiler
© www.soinside.com 2019 - 2024. All rights reserved.