suchen
HeimWeb-Frontendjs-TutorialWie installiere ich React? Einführung in die Installationsschritte von React (mit vollständigen Beispielen)

In diesem Artikel werden hauptsächlich die Installationsschritte von React sowie die Erläuterung der Eigenschaften und Konzepte von React vorgestellt. Lassen Sie uns diesen Artikel gemeinsam lesen

One React

1. Konzept

React ist eine Javascript-Bibliothek zum Erstellen von Benutzeroberflächen.
React wird hauptsächlich zum Erstellen einer Benutzeroberfläche verwendet und ist das V (Ansicht) in MVC.
React entstand als internes Projekt bei Facebook, wurde zum Aufbau der Instagram-Website verwendet und wurde im Mai 2013 als Open Source bereitgestellt.
React ist leistungsstark und die Codelogik ist sehr einfach.

2. Funktionen

  • 高效 −React minimiert die Interaktion mit DOM durch Simulation von DOM.

  • 灵活 −React funktioniert gut mit bekannten Bibliotheken oder Frameworks.

  • JSX − JSX ist eine Erweiterung der JavaScript-Syntax. JSX ist für die React-Entwicklung nicht erforderlich, wird aber empfohlen.

  • 组件 − Das Erstellen von Komponenten über React erleichtert die Wiederverwendung von Code und kann gut bei der Entwicklung großer Projekte eingesetzt werden.

  • 单向响应的数据流 − React implementiert einen unidirektionalen Antwortdatenfluss und reduziert dadurch wiederholten Code, weshalb es einfacher als herkömmliche Datenbindung ist. (Redux)

3. [Installation] (https://doc.react-china.org/docs/installation.html)

yarn init
yarn add react react-dom react-scripts

package.json

{  "name": "test",  "version": "1.0.0",  "description": "zzz",  "main": "index.js",  "license": "MIT",  "dependencies": {    "react": "^16.2.0",    "react-dom": "^16.2.0",    "react-scripts": "^1.0.17"
  },  "scripts": {    "start": "react-scripts start"
  }
}

4. Komponente

1. ES6-Klasse

class Welcome extends React.Component {
    render() {        return (            <h1 id="nbsp-Hello-nbsp-this-props-name-nbsp"> Hello, {this.props.name} </h1>
        )
    }
} 
class App extends React.Component {
    render() {
        return (            <p>
                <Welcome name = "zhz1" />
                <Welcome name = "zhz2" />
                <Welcome name = "zhz3" />
            </p>
        )
    }
}

2. Funktional (zustandslose Komponente)

function Welcome(props) {
    return <h1 id="nbsp-Hello-nbsp-props-name-nbsp"> Hello, {props.name} </h1>}
function App() {
    return (        <p>
            <Welcome name = "zhz1" />
            <Welcome name = "zhz2" />
            <Welcome name = "zhz3" />
        </p>
    )
}

ES5-Schreiben von React.createClass (nur als Referenz)

React.createClass bindet Funktionsmethoden selbst (im Gegensatz zu React.Component, das nur Funktionen bindet, die betroffen sein müssen), was zu unnötigem Leistungsaufwand führt und die Leistung erhöht Möglichkeit, dass Code veraltet ist.

const Welcome = (props) => {    return <h1 id="nbsp-Hello-nbsp-this-props-name-nbsp"> Hello, {this.props.name} </h1>}
const App = React.createClass ({
    render() {
        return (            <p>
                <Welcome name1 = "ss" />
                <Welcome name1 = "zhz2" />
                <Welcome name1 = "zhz3" />
            </p>
        )
    }
});

Export (Bereitstellung der Schnittstelle)
export default App

5. Props-Attribut

6. Zustandszustand

React betrachtet Komponenten als A-Zustand Maschine (Zustandsmaschinen). Durch die Interaktion mit dem Benutzer werden verschiedene Zustände erreicht und anschließend die Benutzeroberfläche gerendert, um die Benutzeroberfläche und die Daten konsistent zu halten.

In React müssen Sie nur den Status der Komponente aktualisieren und dann die Benutzeroberfläche entsprechend dem neuen Status neu rendern (ohne das DOM zu bedienen) (Wenn Sie mehr sehen möchten, gehen Sie zu React Reference Manual -Spalte der chinesischen PHP-Website Learning)

class Welcome extends React.Component {
    render() {        return (            <h1 id="nbsp-Hello-nbsp-this-props-name-nbsp"> Hello, {this.props.name} </h1>
        )
    }
} 
class App extends React.Component {
    constructor() {
        super();
        this.state = {
            selected: false
        }
    }
    changeText() {
        this.setState((preState, props) => ({
            selected: !preState.selected
        }))
    }
    render() {
        return (            <p> 
                <Welcome name= {this.state.selected ? "zhz3-selected" : "zhz3" } onClick={() => this.changeText()} />                <h1 id="nbsp-this-changeText-nbsp-this-state-selected-nbsp-nbsp-zhz-selected-nbsp-nbsp-zhz-nbsp-nbsp"> this.changeText()}> {this.state.selected ? "zhz3-selected" : "zhz3" } </h1>
            </p>
        )
    }
}
export default App;

6. Beachten Sie, dass sich das Klassenattribut

  • in className

  • tabindex-Attribut ändert sich zu

    tabIndex

  • for-Attribut wird zu

    htmlFor

  • Der Wert von textarea muss über das

    -Attribut value

    angegeben werden. Der Wert des
  • style-Attributs empfängt ein Objekt und das CSS-Attribut ändert sich in die

    -Schreibmethode, z. B.: backgroundColor . 驼峰

Dieser Artikel endet hier (wenn Sie mehr sehen möchten, gehen Sie zur Spalte

React User Manual auf der chinesischen PHP-Website, um mehr zu erfahren). Wenn Sie Fragen haben, können Sie diese unten stellen. Hinterlassen Sie eine Nachricht mit einer Frage.

Das obige ist der detaillierte Inhalt vonWie installiere ich React? Einführung in die Installationsschritte von React (mit vollständigen Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
react中canvas的用法是什么react中canvas的用法是什么Apr 27, 2022 pm 03:12 PM

在react中,canvas用于绘制各种图表、动画等;可以利用“react-konva”插件使用canvas,该插件是一个canvas第三方库,用于使用React操作canvas绘制复杂的画布图形,并提供了元素的事件机制和拖放操作的支持。

react中antd和dva是什么意思react中antd和dva是什么意思Apr 21, 2022 pm 03:25 PM

在react中,antd是基于Ant Design的React UI组件库,主要用于研发企业级中后台产品;dva是一个基于redux和“redux-saga”的数据流方案,内置了“react-router”和fetch,可理解为应用框架。

React是双向数据流吗React是双向数据流吗Apr 21, 2022 am 11:18 AM

React不是双向数据流,而是单向数据流。单向数据流是指数据在某个节点被改动后,只会影响一个方向上的其他节点;React中的表现就是数据主要通过props从父节点传递到子节点,若父级的某个props改变了,React会重渲染所有子节点。

react中为什么使用nodereact中为什么使用nodeApr 21, 2022 am 10:34 AM

因为在react中需要利用到webpack,而webpack依赖nodejs;webpack是一个模块打包机,在执行打包压缩的时候是依赖nodejs的,没有nodejs就不能使用webpack,所以react需要使用nodejs。

react中forceupdate的用法是什么react中forceupdate的用法是什么Apr 19, 2022 pm 12:03 PM

在react中,forceupdate()用于强制使组件跳过shouldComponentUpdate(),直接调用render(),可以触发组件的正常生命周期方法,语法为“component.forceUpdate(callback)”。

react是组件化开发吗react是组件化开发吗Apr 22, 2022 am 10:44 AM

react是组件化开发;组件化是React的核心思想,可以开发出一个个独立可复用的小组件来构造应用,任何的应用都会被抽象成一颗组件树,组件化开发也就是将一个页面拆分成一个个小的功能模块,每个功能完成自己这部分独立功能。

react和reactdom有什么区别react和reactdom有什么区别Apr 27, 2022 am 10:26 AM

react和reactdom的区别是:ReactDom只做和浏览器或DOM相关的操作,例如“ReactDOM.findDOMNode()”操作;而react负责除浏览器和DOM以外的相关操作,ReactDom是React的一部分。

react与vue的虚拟dom有什么区别react与vue的虚拟dom有什么区别Apr 22, 2022 am 11:11 AM

react与vue的虚拟dom没有区别;react和vue的虚拟dom都是用js对象来模拟真实DOM,用虚拟DOM的diff来最小化更新真实DOM,可以减小不必要的性能损耗,按颗粒度分为不同的类型比较同层级dom节点,进行增、删、移的操作。

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

SAP NetWeaver Server-Adapter für Eclipse

SAP NetWeaver Server-Adapter für Eclipse

Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

VSCode Windows 64-Bit-Download

VSCode Windows 64-Bit-Download

Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

mPDF

mPDF

mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),