2016-10-10 4 views
2

Hallo Ich habe Probleme beim Importieren von Komponenten von einer Jsx in eine andere. Ich benutze eine django framework, um meine Web-Dateien zu bedienen, und ich habe alle notwendigen Tools heruntergeladen (Npm, Webpack, Webpack-Bundle-Tracker, Babel Loader, Django-Webpack Loader). Webpack macht einen guten Job, nimmt alle separaten Javascript-Dateien und verwandelt sie in ein Bündel, in dem mein lokaler Django-Server dann rendern kann. Das Problem liegt in, wenn ich versuche, import a component from one jsx into another jsx. Es gibt keine Fehler, die ich sehe, aber das Javascript, das ich versuche zu importieren, wird nicht auf django geladen.Problem beim Importieren von Komponenten in reagieren

Beispiel: File:index.js

var React = require('react') 
var ReactDOM = require('react-dom') 
var Body = require('./app.js') 

ReactDOM.render(<Body message="Welcome to my website"/>, document.getElementById('app1')) 

Import-Datei (die als index.js im selben Verzeichnis ist): File:app.js

var React = require('react') 
var Body = React.createClass({ 
    getInitialState: function() { 
     return { 
      bodymessage: this.props.message 
     } 
    }, 
    render: function() { 
     return (
      <h1> 
      {this.state.bodymessage} 
      </h1> 
     ) 
    } 
}) 
module.exports = Body; 

Gibt es etwas falsch mit meiner Konfiguration?

Hier ist meine webpack.config.js Datei:

var path = require('path') 
var webpack = require('webpack') 
var BundleTracker = require('webpack-bundle-tracker') 

module.exports = { 
    context: __dirname, 
    entry: './assets/js/index', 

    output: { 
     path: path.resolve('./assets/bundles/'), 
     filename: '[name]-[hash].js', 
    }, 

    plugins: [ 
     new BundleTracker({filename: './webpack-stats.json'}), 
     new webpack.ProvidePlugin({ 
      $: 'jquery', 
      jQuery: 'jquery', 
      'window.jQuery': 'jquery' 
     }) 
    ], 

    module: { 
     loaders: [ 
      {test: /\.jsx?$/, 
       exclude: /node_modules/, 
       loader: 'babel-loader', 
       query: { 
        presets: ['react'] 
       } 
      } 
     ] 
    }, 
    resolve: { 
     modulesDirectories: ['node_modules', 'bower_components'], 
     extensions: ['', '.js', '.jsx'] 
    } 
} 
+0

Funktioniert dies bei der Verwendung von Webpack-dev-Server? – Pier

+0

Nein, aber ich werde das herunterladen und versuchen, die js mit diesem Server rendern. – user6946961

+0

Immer noch nicht funktioniert. – user6946961

Antwort

0

Versuchen Sie ersetzen diese

   loader: 'babel-loader', 

mit

   loader: 'babel', 

in Sie Config WebPACK

PS: diese shouldve war ein Kommentar, aber nicht genug rep

Verwandte Themen