为了账号安全,请及时绑定邮箱和手机立即绑定

Webpack和Babel的“您可能需要适当的加载器来处理此文件类型”

Webpack和Babel的“您可能需要适当的加载器来处理此文件类型”

心有法竹 2019-10-18 10:09:15
我正在尝试将Webpack与Babel一起使用来编译ES6资产,但是却收到以下错误消息:You may need an appropriate loader to handle this file type.| import React from 'react';| /*| import { render } from 'react-dom'这是我的Webpack配置的样子:var path = require('path');var webpack = require('webpack');module.exports = {  entry: './index',  output: {    path: path.join(__dirname, 'dist'),    filename: 'bundle.js',    publicPath: '/dist/'  },  module: {    loaders: [      {        test: /\.jsx?$/,        loader: 'babel-loader',        exclude: /node_modules/      }    ]  }}这是利用Webpack的中间件步骤:var webpack = require('webpack');var webpackDevMiddleware = require('webpack-dev-middleware');var config = require('./webpack.config');var express = require('express');var app = express();var port = 3000;var compiler = webpack(config);app.use(webpackDevMiddleware(compiler, {  noInfo: true,  publicPath: config.output.publicPath}));app.get('/', function(req, res) {  res.sendFile(__dirname + '/index.html');});app.listen(port, function(err) {  console.log('Server started on http://localhost:%s', port);});我的index.js文件正在做的就是导入react,但似乎“ babel-loader”无法正常工作。我正在使用'babel-loader'6.0.0。
查看完整描述

3 回答

?
猛跑小猪

TA贡献1858条经验 获得超8个赞

您需要安装es2015预设:


npm install babel-preset-es2015

然后配置babel-loader:


{

    test: /\.jsx?$/,

    loader: 'babel-loader',

    exclude: /node_modules/,

    query: {

        presets: ['es2015']

    }

}


查看完整回答
反对 回复 2019-10-18
?
30秒到达战场

TA贡献1828条经验 获得超6个赞

确保已安装es2015 babel预设。


一个示例package.json devDependencies是:


"devDependencies": {

  "babel-core": "^6.0.20",

  "babel-loader": "^6.0.1",

  "babel-preset-es2015": "^6.0.15",

  "babel-preset-react": "^6.0.15",

  "babel-preset-stage-0": "^6.0.15",

  "webpack": "^1.9.6",

  "webpack-dev-middleware": "^1.2.0",

  "webpack-hot-middleware": "^2.0.0"

},

现在在您的webpack配置中配置babel-loader:


{ test: /\.js$/, loader: 'babel-loader', exclude: /node_modules/ }

将.babelrc文件添加到项目的根模块所在的节点:


{

  "presets": ["es2015", "stage-0", "react"]

}


查看完整回答
反对 回复 2019-10-18
  • 3 回答
  • 0 关注
  • 914 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号