


Bagaimana untuk membina aplikasi JavaScript tindanan penuh menggunakan React dan Express
Cara membina aplikasi JavaScript tindanan penuh menggunakan React dan Express
Pengenalan:
React dan Express kini merupakan rangka kerja JavaScript yang sangat popular, yang digunakan untuk membina aplikasi bahagian hadapan dan belakang. Artikel ini akan memperkenalkan cara menggunakan React dan Express untuk membina aplikasi JavaScript tindanan penuh. Kami akan menerangkan langkah demi langkah cara membina aplikasi TodoList yang mudah dan memberikan contoh kod khusus.
1. Persediaan
Sebelum kita mula, kita perlu menyediakan beberapa alatan dan persekitaran yang diperlukan:
-
Node.js dan npm: Pastikan Node.js dan npm (pengurus pakej Node.js) telah dipasang, Anda boleh menyemak sama ada ia telah berjaya dipasang melalui baris arahan, seperti yang ditunjukkan di bawah:
node -v npm -v
- Buat folder projek: Cipta folder baharu dalam direktori kerja anda untuk menyimpan kod aplikasi tindanan penuh kami.
2. Persediaan Backend
-
Mulakan projek: Buka baris arahan dalam folder projek dan laksanakan arahan berikut untuk memulakan projek Node.js baharu:
npm init -y
Ini akan mencipta
pakej lalai Fail .json digunakan untuk merekodkan maklumat berkaitan projek dan pakej bergantung. package.json
文件,用来记录项目的相关信息和依赖包。 -
安装Express和其他依赖:在命令行中执行以下命令来安装Express和其他需要的依赖:
npm install express body-parser cors --save
这里我们安装了Express、body-parser和cors,用来处理HTTP请求和跨域请求。
- 创建Express服务器:在项目文件夹的根目录下创建一个新的JavaScript文件,命名为
server.js
。打开server.js
,并添加以下内容:
const express = require('express'); const bodyParser = require('body-parser'); const cors = require('cors'); const app = express(); app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); app.use(cors()); const PORT = process.env.PORT || 5000; app.listen(PORT, () => { console.log(`Server is running on port ${PORT}`); });
这段代码首先引入了需要的依赖包,然后创建了一个Express实例并设置了一些中间件。最后,我们监听指定的端口(默认是5000)。
- 添加路由和API:继续编辑
server.js
,在已有的代码下方添加以下内容:
let todos = []; app.get('/api/todos', (req, res) => { res.json(todos); }); app.post('/api/todos', (req, res) => { const { todo } = req.body; todos.push(todo); res.json(todos); });
这段代码定义了两个路由:一个用于获取所有的todo项,一个用于添加新的todo项。我们使用一个简单的数组todos
来存储所有的todo项。
-
启动服务器:在命令行中执行以下命令来启动Express服务器:
node server.js
如果一切正常,你将会在命令行中看到
Server is running on port XXXX
的提示,表示服务器已成功启动。
三、前端搭建
-
创建React应用:回到项目文件夹,在命令行中执行以下命令来创建一个新的React应用:
npx create-react-app client
这将会在项目文件夹下创建一个名为
client
的新文件夹,用来存放我们的React前端应用代码。 - 编辑React组件:打开刚刚创建的
client/src/App.js
文件,将其中的代码替换为以下内容:
import React, { useState, useEffect } from "react"; function App() { const [todos, setTodos] = useState([]); const [newTodo, setNewTodo] = useState(""); useEffect(() => { fetch("/api/todos") .then(res => res.json()) .then(data => setTodos(data)); }, []); const handleInputChange = e => { setNewTodo(e.target.value); }; const handleSubmit = e => { e.preventDefault(); const todo = { todo: newTodo }; fetch("/api/todos", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(todo) }) .then(res => res.json()) .then(data => setTodos(data)) .catch(err => console.log(err)); setNewTodo(""); }; return ( <div> <h1 id="Todo-List">Todo List</h1> <form onSubmit={handleSubmit}> <input value={newTodo} onChange={handleInputChange} /> <button type="submit">Add Todo</button> </form> <ul> {todos.map((todo, index) => ( <li key={index}>{todo}</li> ))} </ul> </div> ); } export default App;
这段代码定义了一个React函数组件App
,它用来展示todo列表。组件中使用了useState
和useEffect
两个React的Hook来处理组件的状态和副作用。我们通过fetch
函数来发送HTTP请求和获取数据。
-
启动React应用:在项目文件夹下打开命令行,进入
Pasang Express dan dependensi lain: Jalankan arahan berikut dalam baris arahan untuk memasang dependensi Express dan lain-lain yang diperlukan:client
npm start
server.js
. Buka server.js
dan tambah kandungan berikut: 🎜🎜rrreee🎜Kod ini mula-mula memperkenalkan pakej pergantungan yang diperlukan, kemudian mencipta contoh Express dan menyediakan beberapa perisian tengah. Akhir sekali, kami mendengar pada port yang ditentukan (lalai ialah 5000). 🎜- 🎜Tambah penghalaan dan API: Teruskan mengedit
server.js
dan tambah kandungan berikut di bawah kod sedia ada: 🎜🎜rrreee🎜Kod ini mentakrifkan dua laluan : Satu digunakan untuk mendapatkan semua item todo, dan satu digunakan untuk menambah item todo baharu. Kami menggunakan tatasusunan mudah todos
untuk menyimpan semua item todo. 🎜- 🎜🎜Mulakan pelayan: Jalankan arahan berikut dalam baris arahan untuk memulakan pelayan Ekspres: 🎜rrreee🎜Jika semuanya berjalan lancar, anda akan melihat dalam baris arahan bahawa
client
akan digunakan untuk menyimpan kod aplikasi bahagian hadapan React kami. 🎜🎜🎜Edit komponen React: Buka fail client/src/App.js
yang baru anda buat dan gantikan kod di dalamnya dengan kandungan berikut: 🎜🎜rrreee🎜Kod ini mentakrifkan komponen fungsi ReactApp, yang digunakan untuk memaparkan senarai tugasan. Komponen menggunakan dua React Hooks, useState
dan useEffect
, untuk mengendalikan keadaan komponen dan kesan sampingan. Kami menggunakan fungsi fetch
untuk menghantar permintaan HTTP dan mendapatkan data. 🎜- 🎜🎜Mulakan aplikasi React: Buka baris arahan di bawah folder projek, masukkan folder
client
dan laksanakan arahan berikut untuk memulakan pelayan pembangunan React: 🎜 rrreee🎜Jika Semuanya baik-baik saja, anda akan melihat aplikasi TodoList mudah dalam penyemak imbas, dan anda boleh menambah item todo baharu. 🎜🎜🎜🎜Kesimpulan: 🎜Melalui langkah dalam artikel ini, kami berjaya membina aplikasi JavaScript tindanan penuh yang ringkas menggunakan React dan Express bersama-sama. Anda boleh melanjutkan lagi fungsi aplikasi mengikut keperluan anda, seperti menambah fungsi penyuntingan dan pemadaman, atau menggunakan pangkalan data untuk menyimpan data. Pembangunan tindanan penuh membolehkan kami memberikan permainan penuh kepada kelebihan teknologi bahagian hadapan dan bahagian belakang pada masa yang sama dan meningkatkan kecekapan pembangunan saya harap artikel ini akan membantu anda. 🎜Atas ialah kandungan terperinci Bagaimana untuk membina aplikasi JavaScript tindanan penuh menggunakan React dan Express. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Penggunaan utama JavaScript dalam pembangunan web termasuk interaksi klien, pengesahan bentuk dan komunikasi tak segerak. 1) kemas kini kandungan dinamik dan interaksi pengguna melalui operasi DOM; 2) pengesahan pelanggan dijalankan sebelum pengguna mengemukakan data untuk meningkatkan pengalaman pengguna; 3) Komunikasi yang tidak bersesuaian dengan pelayan dicapai melalui teknologi Ajax.

Memahami bagaimana enjin JavaScript berfungsi secara dalaman adalah penting kepada pemaju kerana ia membantu menulis kod yang lebih cekap dan memahami kesesakan prestasi dan strategi pengoptimuman. 1) aliran kerja enjin termasuk tiga peringkat: parsing, penyusun dan pelaksanaan; 2) Semasa proses pelaksanaan, enjin akan melakukan pengoptimuman dinamik, seperti cache dalam talian dan kelas tersembunyi; 3) Amalan terbaik termasuk mengelakkan pembolehubah global, mengoptimumkan gelung, menggunakan const dan membiarkan, dan mengelakkan penggunaan penutupan yang berlebihan.

Python lebih sesuai untuk pemula, dengan lengkung pembelajaran yang lancar dan sintaks ringkas; JavaScript sesuai untuk pembangunan front-end, dengan lengkung pembelajaran yang curam dan sintaks yang fleksibel. 1. Sintaks Python adalah intuitif dan sesuai untuk sains data dan pembangunan back-end. 2. JavaScript adalah fleksibel dan digunakan secara meluas dalam pengaturcaraan depan dan pelayan.

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.

Peralihan dari C/C ke JavaScript memerlukan menyesuaikan diri dengan menaip dinamik, pengumpulan sampah dan pengaturcaraan asynchronous. 1) C/C adalah bahasa yang ditaip secara statik yang memerlukan pengurusan memori manual, manakala JavaScript ditaip secara dinamik dan pengumpulan sampah diproses secara automatik. 2) C/C perlu dikumpulkan ke dalam kod mesin, manakala JavaScript adalah bahasa yang ditafsirkan. 3) JavaScript memperkenalkan konsep seperti penutupan, rantaian prototaip dan janji, yang meningkatkan keupayaan pengaturcaraan fleksibiliti dan asynchronous.

Enjin JavaScript yang berbeza mempunyai kesan yang berbeza apabila menguraikan dan melaksanakan kod JavaScript, kerana prinsip pelaksanaan dan strategi pengoptimuman setiap enjin berbeza. 1. Analisis leksikal: Menukar kod sumber ke dalam unit leksikal. 2. Analisis Tatabahasa: Menjana pokok sintaks abstrak. 3. Pengoptimuman dan Penyusunan: Menjana kod mesin melalui pengkompil JIT. 4. Jalankan: Jalankan kod mesin. Enjin V8 mengoptimumkan melalui kompilasi segera dan kelas tersembunyi, Spidermonkey menggunakan sistem kesimpulan jenis, menghasilkan prestasi prestasi yang berbeza pada kod yang sama.

Aplikasi JavaScript di dunia nyata termasuk pengaturcaraan sisi pelayan, pembangunan aplikasi mudah alih dan Internet of Things Control: 1. Pengaturcaraan sisi pelayan direalisasikan melalui node.js, sesuai untuk pemprosesan permintaan serentak yang tinggi. 2. Pembangunan aplikasi mudah alih dijalankan melalui reaktnatif dan menyokong penggunaan silang platform. 3. Digunakan untuk kawalan peranti IoT melalui Perpustakaan Johnny-Five, sesuai untuk interaksi perkakasan.

Saya membina aplikasi SaaS multi-penyewa berfungsi (aplikasi edTech) dengan alat teknologi harian anda dan anda boleh melakukan perkara yang sama. Pertama, apakah aplikasi SaaS multi-penyewa? Aplikasi SaaS Multi-penyewa membolehkan anda melayani beberapa pelanggan dari Sing


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

Dreamweaver Mac版
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)