如何为 babel-loader 预设设置解析 [英] How to set resolve for babel-loader presets

查看:29
本文介绍了如何为 babel-loader 预设设置解析的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试与 webpack 打包.我的依赖有点复杂:有些组件需要位于 /home/.../ 文件夹中的其他组件.

I'm trying to make a bundle with webpack. I have a bit complex dependency: some components require other ones that are located in some /home/.../ folder.

组件(/home/.../far-away-components/base-component.js 文件):

import {base_component} from "base-component";
exports class MyComponent extends base_component {
   ...
}

webpack.config.js:

var path = require("path");
module.exports = {
    ...
    module: {
        loaders: [
            {
                test: /\.(js)$/,
                loader: "babel",
                query: {
                    presets: ['react', 'es2015', "stage-0"]
                }
            }
        ]
    },
    resolve: {
        alias: {
            "base-component": "/home/.../far-away-components/base-component.js"
    }
};

问题是 far-away-components 文件夹不包含 node_modules 并且我收到一个错误:Couldn't find preset "react" relative到目录/home/.../far-away-components".

The problem is that far-away-components folder doesn't contain node_modules and I get an error: Couldn't find preset "react" relative to directory "/home/.../far-away-components".

如何为 babel-loader 预设设置 resolve?

How can I set resolve for babel-loader presets?

推荐答案

解决方案 来自github问题:

query: {
  presets: [
    'babel-preset-es2015',
    'babel-preset-react',
    'babel-preset-stage-0',
  ].map(require.resolve),
}

这篇关于如何为 babel-loader 预设设置解析的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆