“Vous aurez besoin d'un chargeur approprié pour traiter ce type de fichier” avec Webpack et Babel

Je suis en train d'utiliser Webpack avec Babel pour compiler ES6 actifs, mais je reçois le message d'erreur suivant:

You may need an appropriate loader to handle this file type.
| import React from 'react';
| /*
| import { render } from 'react-dom'

Voici ce que ma Webpack config ressemble:

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/
      }
    ]
  }
}

Ici est le middleware étape qui rend l'utilisation de 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);
});

Tous mes index.js le fichier est en train de faire est de l'importation de réagir, mais il semble que le "babel-loader" n'est pas de travail.

Je suis en utilisant "babel-loader' 6.0.0.

  • Je vais avoir le même problème. babel-preset-es2015 est installé et pourtant, il a encore des problèmes avec l'utilisation de JSX dans un ReactDOM.render() appel :s
  • Qu'est-ce que les extensions de vos fichiers? Sont-ils js fichiers ou jsx fichiers? Votre chargeur considère uniquement les fichiers avec jsx extensions, qui pourrait être le problème
InformationsquelleAutor egidra | 2015-11-02