Suche…


Einfache Reaktionskomponente

Wir möchten die Komponente unten kompilieren und auf unserer Webseite darstellen können

Dateiname : src / index.jsx

import React from 'react';
import ReactDOM from 'react-dom';

class ToDo extends React.Component {
    render() {
        return (<div>I am working</div>);
    }
}

ReactDOM.render(<ToDo />, document.getElementById('App'));

Installieren Sie alle Abhängigkeiten

# install react and react-dom
$ npm i react react-dom --save

# install webpack for bundling
$ npm i webpack -g

# install babel for module loading, bundling and transpiling
$ npm i babel-core babel-loader --save

# install babel presets for react and es6
$ npm i babel-preset-react babel-preset-es2015 --save

Konfigurieren Sie das Webpack

Erstellen Sie eine Datei webpack.config.js im Stammverzeichnis Ihres Arbeitsverzeichnisses

Dateiname : webpack.config.js

module.exports = {
    entry: __dirname + "/src/index.jsx",
    devtool: "source-map",
    output: {
        path: __dirname + "/build",
        filename: "bundle.js"
    },
    module: {
        loaders: [
            {test: /\.jsx?$/, exclude: /node_modules/, loader: "babel-loader"}
        ]
    }
}

Babel konfigurieren

Erstellen Sie eine Datei .babelrc im Stammverzeichnis unseres Arbeitsverzeichnisses

Dateiname : .babelrc

{
    "presets": ["es2015","react"]
}

HTML-Datei für die Reakt-Komponente

Richten Sie eine einfache HTML-Datei im Stammverzeichnis des Projektverzeichnisses ein

Dateiname : index.html

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title></title>
  </head>
  <body>
    <div id="App"></div>
    <script src="build/bundle.js" charset="utf-8"></script>
  </body>
</html>

Transpile und bündeln Sie Ihre Komponente

Mit dem Webpack können Sie Ihre Komponente bündeln:

$ webpack

Dadurch wird unsere Ausgabedatei im build Verzeichnis erstellt.

Öffnen Sie die HTML-Seite in einem Browser, um die Komponente in Aktion anzuzeigen



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow