Hướng dẫn can you use react with python backend? - bạn có thể sử dụng phản ứng với chương trình phụ trợ python không?

React là một khung ứng dụng web JavaScript để xây dựng các giao diện người dùng phong phú chạy trong các trình duyệt web.

Hướng dẫn can you use react with python backend? - bạn có thể sử dụng phản ứng với chương trình phụ trợ python không?

React là một triển khai của khái niệm khung JavaScript. Tìm hiểu làm thế nào các phần này khớp với nhau trong chương phát triển web hoặc xem bảng nội dung cho tất cả các chủ đề.

Hướng dẫn phản ứng cho người mới bắt đầu

Nói chung trước khi bạn bắt đầu làm việc với React, bạn sẽ muốn tìm hiểu cách xây dựng phụ trợ Python của mình với một khung web như Django, Flask hoặc Kim tự tháp. Khi bạn cảm thấy thoải mái với những điều cơ bản phát triển web với một trong những khung hình đó cũng như JavaScript thì sẽ dễ dàng hơn nhiều khi phản ứng để xây dựng giao diện người dùng phía máy khách của bạn.

  • Các nguyên tắc cơ bản của JavaScript trước khi học React cung cấp kiểm tra đường ruột rằng bạn có kiến ​​thức điều kiện tiên quyết để tránh bị mắc kẹt vô cùng trong khi cố gắng học React.

  • Hướng dẫn phản ứng chính thức là một trong những cách tốt nhất để bắt đầu sử dụng React vì nhiều hướng dẫn khác nhanh chóng rơi vào thời điểm trong khi cách này có xu hướng gắn bó với những điều cơ bản có liên quan đến người mới bắt đầu.

  • 9 điều mỗi người mới bắt đầu React.js nên biết không phải là một hướng dẫn mà thay vào đó, tác giả đưa ra một số ý kiến ​​mạnh mẽ cho những gì người mới bắt đầu nên biết khi họ bắt đầu học phản ứng.

  • React Bootstrap (Mã nguồn thay thế JavaScript bootstrap hiện có bằng các thành phần React không dựa vào jQuery.

Python+React Hướng dẫn

  • Cách thiết lập Django với React trình bày một cách quan điểm của một nhà phát triển để kết hợp một mặt sau được cung cấp bởi Django với React ở mặt trước, bao gồm cả cách phục vụ các tài sản tĩnh.

  • Django nghỉ ngơi với React (Django 2.0 và một bài kiểm tra rắc) kết hợp phần phụ trợ Django Plus Django Rest (DRF) với React ở phía trước và cho thấy cách Stich tất cả lại với nhau.

  • Sê-ri Hướng dẫn 4 phần Django hiện đại này được thực hiện tốt, có mã nguồn có sẵn miễn phí và bao gồm:

    1. Thiết lập Django và React
    2. Thiết lập bộ định tuyến Redux và React
    3. Tạo API và tích hợp với React
    4. Thêm xác thực để phản ứng spa bằng DRF
  • Xây dựng một ứng dụng CRUD đơn giản với Python, bình và React cho thấy cách kết hợp phụ trợ bình với React.

  • Tìm hiểu ứng dụng React là một kho lưu trữ Git với hướng dẫn mã và hướng dẫn về cách theo dõi, cũng như các bài tập để đảm bảo bạn được kiểm tra khi bạn đi.

Tài nguyên phản ứng khác

  • React Câu hỏi phỏng vấn là một bài kiểm tra tốt để xem những gì bạn biết hoặc vẫn cần tìm hiểu về các nguyên tắc cơ bản của việc sử dụng React.

  • Under-the-hood-Reactjs kiểm tra chính cơ sở mã phản ứng thay vì dạy bạn cách sử dụng nó.

Bạn có cần tạo kiểu cho ứng dụng của bạn hoặc triển khai nó?

Ứng dụng của tôi chạy nhưng trông khủng khiếp. Làm cách nào để tạo kiểu giao diện người dùng?

Tôi đã xây dựng một ứng dụng web Python, bây giờ làm cách nào để triển khai nó?

Làm thế nào tôi nên lưu trữ và phục vụ các tệp nội dung tĩnh?

Tôi có kinh nghiệm xây dựng các ứng dụng web bằng cách sử dụng bình React và Python với nhau, vì vậy có lẽ tôi có thể giúp đỡ.

Tôi không biết cách sử dụng trực tiếp Python trên các ứng dụng web phía máy khách, nhưng chắc chắn có rất nhiều cách để sử dụng Python trên phần phụ trợ. Các khung web Python phổ biến nhất là Flask và Django.

Nếu vậy bạn có thể vui lòng cho tôi một số liên kết để học hỏi đó

YouTuber Corey Schafer có một loạt hướng dẫn trên YouTube tuyệt vời trên bình, mà tôi hoàn toàn muốn giới thiệu.

Khi bạn cảm thấy thoải mái hơn với sự phát triển web trong Python, tôi nghĩ rằng trang web https://realpython.com/ có hướng dẫn tuyệt vời cho cả hai câu hỏi cụ thể (ví dụ: xác thực dựa trên mã thông báo trong bình) và hướng dẫn chung hơn.

Nếu bạn đi với Django, nó có một ORM tuyệt vời được xây dựng để làm việc với cơ sở dữ liệu.

Nếu bạn đi với Flask, IMO thân thiện với người mới bắt đầu hơn, tôi sẽ đề nghị Peewee Orm làm việc với cơ sở dữ liệu quan hệ trừ khi bạn có trường hợp sử dụng phức tạp hơn, trong trường hợp SQLalchemy là tiêu chuẩn thực tế.

Chúc may mắn học tập!


Cập nhật

Tôi vừa bắt gặp thư viện Python tuyệt vời này có tên Transcrypt giúp chuyển mã Python vào JavaScript, vì vậy hóa ra bạn có thể viết mã phía máy khách cho web trong Python. Trang web của họ có một số hướng dẫn thú vị.

Mặc dù thư viện JavaScript phổ biến nhất để tạo giao diện người dùng là React, việc học cách sử dụng thư viện này như một nhà phát triển Python có thể là một quá trình dài và khó khăn.

Mặc dù bạn có thể xem và đọc tất cả các hướng dẫn phản ứng có thể để hiểu thư viện này, nhưng nó có thể khó khăn nếu bạn không biết đường dẫn thích hợp hoặc cách tiếp cận từng bước.

Điều này là do React sử dụng các cấu trúc dữ liệu và cú pháp rất khác so với Python, điều này gây khó khăn cho các nhà phát triển Python để thích nghi.

Trong bài viết này, chúng tôi sẽ vạch ra một kế hoạch đường bộ để bắt đầu với React, cũng như các điều kiện tiên quyết cốt lõi để lặn vào React như một nhà phát triển Python. Chúng tôi cũng sẽ tạo một ứng dụng Trình quản lý liên lạc với Flask (khung web Python) và phản ứng làm ví dụ.

Trước khi bắt đầu, bạn nên có kiến ​​thức về HTML, CSS, JavaScript và Python.

Giới thiệu để phản ứng

Facebook đã tạo và duy trì thư viện JavaScript React để thiết kế giao diện người dùng. Nó đã phát triển phổ biến trong những năm gần đây do khả năng mang lại sức mạnh của chương trình phản ứng và tuyên bố cho lĩnh vực phát triển Frontend.

React cũng đã giúp dễ dàng xem xét mã giao diện người dùng và mô hình lập trình của nó khuyến khích mã mô -đun và có thể sử dụng lại.

Nó rất quan trọng để hiểu rằng React không gì khác hơn JavaScript.

React không phải là một ngôn ngữ lập trình độc lập hoặc một khung dành riêng cho miền, phải mất nhiều năm để hiểu. Nó có một API đơn giản chỉ với một vài chức năng và khái niệm để thành thạo trước khi bạn có thể sử dụng nó để tạo các ứng dụng web.

Hãy cùng tìm hiểu về một số khái niệm phản ứng sẽ rất quan trọng để hiểu trong hành trình xây dựng các ứng dụng web của bạn với React.

Các thành phần phản ứng

Các thành phần là các đoạn mã có thể tái sử dụng được khép kín. Họ hoàn thành điều tương tự như các hàm JavaScript, ngoại trừ chúng hành động độc lập và trả lại HTML.

Chúng có thể liên quan đến lập trình hướng đối tượng Python (OOP) vì cả Python và JavaScript đều thể hiện sự kế thừa của các mô hình dữ liệu.

Tuy nhiên, trong OOP, dữ liệu không giới hạn vì bất kỳ đối tượng nào có thể được tạo ra từ một lớp Python, không giống như các thành phần React trong đó dữ liệu được giới hạn trong một tập hợp các thành phần khác. Ngoài ra, các thành phần React có thể giữ dữ liệu cho trạng thái của chính họ, điều này không giống với các lớp Python.

Trong React, các thành phần có thể chia một ứng dụng web thành các phần riêng biệt với các chức năng riêng biệt. Ví dụ: bạn có thể tạo một thành phần cho tiêu đề của ứng dụng web và một thành phần khác cho menu điều hướng, sử dụng lại nó trên các trang khác trong ứng dụng của bạn.

Kiến trúc thành phần

Trong Python, không có hệ thống phân cấp đặc biệt cho cách sử dụng các lớp. Tuy nhiên, các thành phần React hoạt động trong một hệ thống phân cấp cụ thể.

Chúng tôi biết rằng chúng tôi có thể gọi và kết xuất các thành phần trong các thành phần khác. Thành phần được gọi là thành phần con, trong khi phần gọi thành phần con được gọi là thành phần cha. Đây được gọi là mối quan hệ cha mẹ và con cái.

Bạn sẽ tìm hiểu sau trong bài viết này quan trọng như thế nào khi biết kiến ​​trúc này đối với việc truyền dữ liệu giữa các thành phần.


Nhiều bài viết tuyệt vời hơn từ Logrocket:

  • Đừng bỏ lỡ một khoảnh khắc với bản phát lại, một bản tin được quản lý từ Logrocket
  • Tìm hiểu cách Galileo của Logrocket cắt giảm tiếng ồn để chủ động giải quyết các vấn đề trong ứng dụng của bạn
  • Sử dụng React's UsEffect để tối ưu hóa hiệu suất của ứng dụng của bạn
  • Chuyển đổi giữa nhiều phiên bản của nút
  • Khám phá cách làm động ứng dụng ứng dụng React của bạn với Animxyz
  • Khám phá Tauri, một khuôn khổ mới để xây dựng các nhị phân
  • So sánh NestJS so với Express.js

Thành phần lớp

Thành phần lớp là một thành phần kế thừa các tính năng từ

def Header() {
  return "Hello, I am a header!";
}
1.

Dưới đây là một ví dụ về một thành phần lớp:

class Header extends React.Component {
  render() {
    return 

Hello, I am a header!

; } }

Trong thành phần lớp ở trên, chúng tôi đã bao gồm

def Header() {
  return "Hello, I am a header!";
}
2. Tuyên bố này thêm một kế thừa
def Header() {
  return "Hello, I am a header!";
}
3 cho thành phần, cho phép nó truy cập vào các chức năng
def Header() {
  return "Hello, I am a header!";
}
3.

Thành phần cũng yêu cầu hàm

def Header() {
  return "Hello, I am a header!";
}
5, trả về HTML, để hiển thị dữ liệu trong đó.

Tương đương với thành phần lớp trong Python như sau:

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;

Các thành phần chức năng

Một thành phần chức năng, như thành phần lớp, trả về HTML và hoạt động tương tự, nhưng các thành phần chức năng có thể được xây dựng với mã ít hơn đáng kể, dễ nắm bắt hơn do cú pháp đơn giản của chúng và được ưa chuộng trong hướng dẫn này:

function Header() {
  return 

Hello, I am a header!

; }

Dưới đây là tương đương Python:

def Header() {
  return "Hello, I am a header!";
}

JSX

Mặc dù các thẻ

def Header() {
  return "Hello, I am a header!";
}
6 và
def Header() {
  return "Hello, I am a header!";
}
7 trông giống như các thẻ HTML, nhưng chúng không. JSX là một phần mở rộng cú pháp cho JavaScript có chứa các thẻ này và được nhóm React thiết kế để kích hoạt đánh dấu giống như HTML trong các thành phần JavaScript.

Chúng tương tự như động cơ tạo khuôn viên Python Jinja.

Có một vài khác biệt chính giữa thẻ JSX và HTML. Đầu tiên chỉ đơn giản là từ khóa

def Header() {
  return "Hello, I am a header!";
}
8 bây giờ là
def Header() {
  return "Hello, I am a header!";
}
9.
def Header() {
  return "Hello, I am a header!";
}
8
keyword is now
def Header() {
  return "Hello, I am a header!";
}
9.

Thứ hai, trong HTML, chúng tôi sử dụng các chuỗi như sau để xác định các kiểu nội tuyến:

Hello

Tuy nhiên, trong JSX, chúng tôi sử dụng các đối tượng có con lạc đà:

Hello

Và cuối cùng, các biến có thể được thêm vào đánh dấu JSX của chúng tôi để được hiển thị bằng cách gói một biến trong:

render() {
    var myText = 'Hello!';
    return (
          

{myText}

); }

Các lớp phản ứng khác có thể được tham chiếu ngoài các phần tử HTML như

def Header() {
  return "Hello, I am a header!";
}
6 và
def Header() {
  return "Hello, I am a header!";
}
7. Ví dụ, trong

Hello

2 của chúng tôi, chúng tôi hiển thị thành phần

Hello

3 bằng cách truy cập nó là

Hello

4.

Thành phần kiểu dáng

Có ba cách để tạo kiểu cho các thành phần phản ứng của bạn: sử dụng CSS đơn giản, kiểu nội tuyến với các đối tượng kiểu JavaScript hoặc tạo các thành phần kiểu dáng.

Sử dụng CSS đơn giản để tạo kiểu

Theo cách đầu tiên để tạo kiểu các thành phần React, sử dụng CSS đơn giản, bạn phải tạo tệp CSS thông thường và nhập nó vào thành phần React của bạn. Sau khi nhập nó, bạn phải thêm tên lớp cho các thành phần HTML hoặc JSX tương ứng của chúng cho các kiểu.

Dưới đây là một ví dụ cho kiểu tiêu đề CSS:

.header {
  padding: 60px;
  text-align: center;
  background: #1abc9c;
  color: white;
  font-size: 30px;
}

Sau đó, chúng tôi có thành phần tiêu đề:

import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
Sử dụng các đối tượng kiểu JavaScript

Trong phương thức thứ hai, bạn phải xóa tệp CSS đã nhập và tạo một đối tượng có phần đệm

Hello

5 và chuyển đối tượng cho div bằng thuộc tính kiểu:

import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;

Điều đáng chú ý là bạn không cần phải cung cấp pixel làm đơn vị đệm. Theo mặc định, React biến điều này thành một chuỗi pixel. Nếu bạn muốn một đơn vị nhất định, hãy viết nó dưới dạng chuỗi. Vì vậy, ví dụ, nếu bạn muốn phần đệm là một tỷ lệ phần trăm, nó sẽ là

Hello

6.

Sử dụng các thành phần kiểu dáng

Cách thứ ba để tạo kiểu cho các thành phần của bạn là bằng cách tạo các thành phần kiểu dáng. Trong phương pháp này, bạn phải tạo các đối tượng theo kiểu, gắn chúng và bọc các phần tử JSX của bạn.

Thành phần kiểu dáng là một gói phát triển cho React và React Native. Nó cho phép bạn sử dụng các kiểu cấp độ thành phần trong các ứng dụng của bạn và chúng tích hợp JavaScript với CSS bằng cách sử dụng một kỹ thuật được gọi là CSS-in-JS.

Các thành phần theo kiểu được xây dựng trên các mẫu mẫu được gắn thẻ, ngụ ý rằng mã CSS thực tế được viết giữa các backticks khi các thành phần tạo kiểu. Các nhà phát triển có thể sử dụng lại mã CSS của họ từ dự án này sang dự án tiếp theo là kết quả của việc này.

Khi sử dụng các thành phần kiểu dáng, không cần phải ánh xạ các thành phần được xây dựng của bạn theo kiểu CSS bên ngoài.

Bạn có thể cài đặt các thành phần theo kiểu bằng lệnh NPM bên dưới:

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
0

Dưới đây là một ví dụ về cách sử dụng chúng trong mã React của chúng tôi:

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
1

Bạn sẽ thấy rằng khi xây dựng một thành phần chức năng React, bạn có thể chỉ định tên của thành phần với loại biến và tên của nó, như trong

Hello

7.

Hello

7
.

Chúng tôi đã nhập

Hello

8 ở trên, cung cấp cho chúng tôi các khả năng thành phần kiểu dáng. Ngoài ra,

Hello

9 sau

Hello

8 biểu thị phần tử HTML neo,

Hello

1. Khi khai báo một thành phần theo kiểu, bạn có thể sử dụng bất kỳ phần tử HTML nào như
def Header() {
  return "Hello, I am a header!";
}
7,
def Header() {
  return "Hello, I am a header!";
}
6 hoặc

Hello

4.

Những trạng thái

Một đối tượng trạng thái được tích hợp vào các thành phần React. Đối tượng trạng thái là nơi bạn giữ các giá trị thuộc tính của thành phần và các trình tạo lại thành phần khi đối tượng trạng thái thay đổi:

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
2

Trong ví dụ mã ở trên, chúng tôi đã tạo một trạng thái

Hello

5, mang lại giá trị

Hello

6 và

Hello

7, thiết lập và cập nhật trạng thái

Hello

5.

Để làm điều này, chúng tôi đã sử dụng móc

Hello

9 và

Hello

7 để cập nhật

Hello

5, thêm
render() {
    var myText = 'Hello!';
    return (
          

{myText}

); }
2 vào mỗi khi nhấp vào nút. Trạng thái này sau đó sẽ cập nhật trong React Dom, điều đó có nghĩa là trang không cần phải tải lại để thay đổi để kết xuất.

Móc

Móc là các chức năng cho phép bạn hook hook vào các tính năng phản ứng như các chức năng trạng thái và vòng đời. Chúng tương tự như các nhà trang trí trong Python cho phép bạn nối vào một lớp hoặc chức năng và kiểm soát hành vi của nó.

Để sử dụng móc, bạn phải nhập chúng từ thư viện React. Chúng không thể được sử dụng với các thành phần lớp và chỉ có thể được sử dụng ở cấp cao nhất của một thành phần trong đó các thuộc tính chức năng được khai báo, như được thấy trong mã dưới đây:

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
3

Như đã thấy trong mã trên, móc

Hello

9 được sử dụng ở đầu thành phần chức năng, nghĩa là trước câu lệnh trả về.

Móc làm cho việc quản lý trạng thái dễ dàng hơn vì chúng được tích hợp để thực hiện logic quản lý trạng thái đơn giản cho bạn, điều này ngăn bạn lãng phí thời gian để phát minh lại bánh xe.

Một số ví dụ về móc là

Hello

9 và
render() {
    var myText = 'Hello!';
    return (
          

{myText}

); }
5.

Đạo cụ

Đạo cụ phản ứng tương tự như các đối số hàm JavaScript và các thuộc tính HTML. Họ sử dụng cùng một cú pháp như các thuộc tính HTML để chuyển đạo cụ vào một thành phần:

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
4

Đạo cụ là cách bạn truyền dữ liệu giữa các thành phần và có thể được truyền từ thành phần cha sang thành phần con:

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
5

Thành phần cha mẹ ở đây là

render() {
    var myText = 'Hello!';
    return (
          

{myText}

); }
6, trong khi
render() {
    var myText = 'Hello!';
    return (
          

{myText}

); }
7 là thành phần con. Điều này là do thành phần
render() {
    var myText = 'Hello!';
    return (
          

{myText}

); }
7 được gọi trong thành phần
render() {
    var myText = 'Hello!';
    return (
          

{myText}

); }
6, có nghĩa là một prop
.header {
  padding: 60px;
  text-align: center;
  background: #1abc9c;
  color: white;
  font-size: 30px;
}
0 đã được thông qua giữa chúng.

Trạng thái vượt qua như đạo cụ

Bạn cũng có thể vượt qua trạng thái dưới dạng đạo cụ giữa các thành phần cha mẹ và con cái:

<

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
6

Trong ví dụ mã ở trên, chúng tôi khai báo trạng thái

.header {
  padding: 60px;
  text-align: center;
  background: #1abc9c;
  color: white;
  font-size: 30px;
}
0, mang giá trị
.header {
  padding: 60px;
  text-align: center;
  background: #1abc9c;
  color: white;
  font-size: 30px;
}
2 và
.header {
  padding: 60px;
  text-align: center;
  background: #1abc9c;
  color: white;
  font-size: 30px;
}
3, cập nhật trạng thái.

Sau đó, chúng ta có thể chuyển các trạng thái này cho thành phần

render() {
    var myText = 'Hello!';
    return (
          

{myText}

); }
7 dưới dạng đạo cụ. Chúng tôi cũng đã thêm đối số đạo cụ vào thành phần
render() {
    var myText = 'Hello!';
    return (
          

{myText}

); }
7, thu thập các trạng thái đã được thông qua. Cuối cùng, chúng tôi hiển thị dữ liệu ở trạng thái bằng cách sử dụng
.header {
  padding: 60px;
  text-align: center;
  background: #1abc9c;
  color: white;
  font-size: 30px;
}
6.

Redux

Khi làm việc trong React, bạn sẽ cần xử lý các trạng thái trên các thành phần trong một ứng dụng phức tạp. Vấn đề này được giải quyết bằng Redux, gói JavaScript hỗ trợ duy trì trạng thái ứng dụng. Redux lưu trữ tất cả các tiểu bang của bạn trong một nguồn duy nhất và bạn có thể tìm hiểu thêm về nó trong hướng dẫn này.

Trang web

WebPack là một người đóng gói mô -đun JavaScript cho phép bạn giữ các phụ thuộc như các tệp tĩnh trong dự án của bạn để bạn không phải. Trình tải cũng được bao gồm trong WebPack để hỗ trợ thực hiện một số hoạt động nhất định trong dự án của bạn.

Kết xuất máy chủ

Kết xuất máy chủ học sẽ cho phép bạn phát triển các thành phần trên máy chủ và hiển thị chúng dưới dạng HTML trong trình duyệt của bạn; Sau khi tất cả các mô -đun JavaScript tải xuống, React sẽ lên sân khấu.

Đây là một trong những tính năng tốt nhất của React, và nó có thể được sử dụng với bất kỳ công nghệ phụ trợ nào. Bạn có thể tìm hiểu về kết xuất máy chủ trong bài viết này.

Xây dựng bình và các ứng dụng phản ứng

Bây giờ, hãy để xây dựng ứng dụng Flask để quản lý cơ sở dữ liệu và yêu cầu dữ liệu, đây sẽ là phần phụ trợ cho ứng dụng React của chúng tôi. Phần này sẽ trình bày cách xây dựng API Python hoạt động với React, sau đó xây dựng một ứng dụng React tạo ra các yêu cầu từ CNTT của bạn.

Cài đặt bình

Để cài đặt bình, chạy lệnh bên dưới:

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
7

Tiếp theo, chạy lệnh sau để tạo dự án bình:

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
8

Bây giờ chúng ta có thể tạo một

.header {
  padding: 60px;
  text-align: center;
  background: #1abc9c;
  color: white;
  font-size: 30px;
}
7 để thêm mã Python bên dưới:

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
9

Thiết lập ứng dụng bình

Ứng dụng Flask sẽ yêu cầu bạn cài đặt

.header {
  padding: 60px;
  text-align: center;
  background: #1abc9c;
  color: white;
  font-size: 30px;
}
8 và
.header {
  padding: 60px;
  text-align: center;
  background: #1abc9c;
  color: white;
  font-size: 30px;
}
9 bằng cách sử dụng các lệnh bên dưới:

function Header() {
  return 

Hello, I am a header!

; }
0

Sau khi cài đặt các mô -đun cần thiết, nhập chúng và thiết lập chúng. Để thực hiện việc này, hãy sao chép mã bên dưới trong tệp

.header {
  padding: 60px;
  text-align: center;
  background: #1abc9c;
  color: white;
  font-size: 30px;
}
7 của bạn:

function Header() {
  return 

Hello, I am a header!

; }
1

Tiếp theo, thiết lập cơ sở dữ liệu của bạn cho Trình quản lý liên hệ:

function Header() {
  return 

Hello, I am a header!

; }
2

Mô hình

import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
1 tạo ra các bảng cơ sở dữ liệu và trình trang trí
import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
2 chạy lệnh Build Buighting kích hoạt lần đầu tiên bạn sử dụng ứng dụng Flask.

Xây dựng các điểm cuối

Trong mã bên dưới, chúng ta có thể tạo, truy xuất và thay đổi điểm cuối cho ứng dụng Trình quản lý liên hệ:

function Header() {
  return 

Hello, I am a header!

; }
3

Điểm cuối

import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
3 thu thập dữ liệu theo yêu cầu
import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
4 để tạo liên hệ trong cơ sở dữ liệu và điểm cuối
import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
5 có tất cả dữ liệu được lưu trữ trong cơ sở dữ liệu.

Cuối cùng, điểm cuối

import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
6 nhận dữ liệu theo yêu cầu
import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
4. Đảm bảo kiểm tra xem dữ liệu này có tồn tại trong cơ sở dữ liệu trước khi tiến hành xóa nó không. Ba điểm cuối này sẽ rất hữu ích khi xây dựng ứng dụng React của bạn.

Xây dựng ứng dụng React

Để bắt đầu xây dựng các ứng dụng React của chúng tôi, trước tiên chúng tôi phải cài đặt React:

function Header() {
  return 

Hello, I am a header!

; }
4

Để tạo dự án React của bạn, hãy nhập lệnh bên dưới:

function Header() {
  return 

Hello, I am a header!

; }
5

Thiết lập ứng dụng React

Trong ứng dụng React bạn vừa tạo, xác định vị trí tệp

import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
8 và thêm URL API (http://127.0.0.1:5000/) vào nó như trong mẫu mã dưới đây:

function Header() {
  return 

Hello, I am a header!

; }
6

Tiếp theo, tạo hai thư mục có tên

import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
9 và
import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
0. Thư mục
import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
9 sẽ mang tất cả các thành phần ứng dụng trong khi thư mục
import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
0 sẽ mang các thành phần trang.

Tệp
import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
3

Tiếp theo, hãy để nhập và hiển thị thành phần

import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
4 mang tất cả các thành phần khác cho ứng dụng này. Sao chép và dán mã vào tệp
import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
3 của bạn:

function Header() {
  return 

Hello, I am a header!

; }
7

Xây dựng các thành phần

Trong phần này, chúng tôi sẽ xây dựng các thành phần tạo nên ứng dụng Trình quản lý liên lạc.

Thành phần
import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
4

Tạo một tệp mới có tên

import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
7 trong thư mục
import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
0 và sao chép và dán mã bên dưới vào nó:

function Header() {
  return 

Hello, I am a header!

; }
8

Trong mã trên, chúng tôi đã tạo thành phần

import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
4 và hiển thị các thành phần
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
00 và
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
01 trong đó.

Sau đó, bằng cách tạo trạng thái

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
02 và setter của nó,
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
03, điều này sẽ mang dữ liệu liên hệ. Trạng thái
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
04 và setter của nó,
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
05, cũng mang đầu vào cho dữ liệu để thêm vào cơ sở dữ liệu.

Tiếp theo, móc

render() {
    var myText = 'Hello!';
    return (
          

{myText}

); }
5 và phương thức
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
07 để truy xuất dữ liệu từ điểm cuối
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
08 trong ứng dụng bình, đặt dữ liệu được truy xuất đến trạng thái ____102 hiện tại. Điều này đảm bảo dữ liệu được truy xuất giống như dữ liệu được hiển thị trên ứng dụng.

Khi tạo hàm

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
10, nó đặt trạng thái của trạng thái
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
04 thành dữ liệu hiện tại trong trường đầu vào. Sau đó, chúng ta có thể chuyển
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
10 như một chỗ dựa cho thành phần
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
01.

Chức năng

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
14 gửi dữ liệu đến điểm cuối
import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
3 trong bình để thêm dữ liệu mới vào cơ sở dữ liệu và xóa trường đầu vào bằng cách đặt trạng thái ____105 vào chuỗi trống trong khi nhận dữ liệu mới nhất sau khi tạo liên hệ mới bằng cách sử dụng hàm
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
17 .

Hàm này cũng đặt trạng thái

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
02 thành dữ liệu mới nhất sau khi sử dụng phương thức
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
07 để truy xuất dữ liệu. Sau đó, chúng ta có thể chuyển
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
14 dưới dạng prop cho thành phần
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
01.

Và cuối cùng, hàm

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
22 xóa các liên hệ khỏi cơ sở dữ liệu bình bằng cách thực hiện yêu cầu bằng phương thức
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
07 cho điểm cuối
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
24, theo sau là hàm
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
17 để lấy dữ liệu mới sau khi xóa hành động.

Sau đó, chúng ta có thể chuyển chức năng

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
22 và trạng thái ____102 cho thành phần
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
00.

Thành phần
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
00

Thành phần

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
00 hiển thị tất cả dữ liệu được lấy từ cơ sở dữ liệu ứng dụng bình. Để sử dụng thành phần
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
00, hãy tạo một tệp mới có tên
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
32 trong thư mục thành phần và sao chép và dán mã bên dưới vào nó:

function Header() {
  return 

Hello, I am a header!

; }
9

Bằng cách hiển thị mỗi liên hệ trong danh sách bằng hàm bản đồ để ánh xạ dữ liệu trong prop

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
33 được truyền từ
import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
4, chúng ta có thể thêm nút xóa để kích hoạt hàm
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
35 và chuyển tên của liên hệ cụ thể sẽ bị xóa.

Hàm

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
35 sau đó thu thập tên được truyền và gọi
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
37 prop được truyền từ thành phần
import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
4 và thực hiện chức năng tương tự như
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
22.

Cùng với đó, danh sách liên lạc của chúng tôi hiện trông giống như danh sách dưới đây:

Hướng dẫn can you use react with python backend? - bạn có thể sử dụng phản ứng với chương trình phụ trợ python không?

Thành phần
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
01

Thành phần biểu mẫu hiển thị biểu mẫu được sử dụng để gửi dữ liệu cho ứng dụng của chúng tôi. Để thực hiện việc này, hãy tạo một tệp mới có tên

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
41 trong thư mục
import React from 'react';
import PropTypes from 'prop-types';
import './Header.css';
...
export default function Alert() {
  return(
    

React Header

) }
9 và sao chép và dán mã bên dưới:

def Header() {
  return "Hello, I am a header!";
}
0

Ở đây, hàm

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
43 được gắn vào biểu mẫu, trong khi hàm
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
44 được gắn vào phần tử đầu vào tên.

Hàm

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
44 kích hoạt khi chúng tôi nhập dữ liệu vào trường nhập văn bản HTML, trong khi chức năng hàm
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
43 kích hoạt khi biểu mẫu được gửi. Điều này được thực hiện bằng cách gọi các hàm prop được truyền từ
import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
4 trong
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
44 và
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
43.

Trong

class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
44, chúng tôi đã gọi
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
51 Prop, thực hiện hàm
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
10 trong thành phần
import React from 'react';

function Header() {
  const wrapper = {
    padding: 20
  };

  return(
    

) } export default Header;
4, trong khi trong
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
43, chúng tôi đã gọi
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
51 Prop để thực hiện hàm
class MyComponent(Component):
    def __init__(self):
        super().__init__()

    def render(self):
        return "Hello, I am a heder" ;
14.

Và ở đây, Mẫu liên hệ thêm cuối cùng:

Hướng dẫn can you use react with python backend? - bạn có thể sử dụng phản ứng với chương trình phụ trợ python không?

Sự kết luận

Cuối cùng, chúng tôi có một danh sách liên hệ làm việc mà chúng tôi có thể thêm và xóa liên hệ một cách hiệu quả:

Hướng dẫn can you use react with python backend? - bạn có thể sử dụng phản ứng với chương trình phụ trợ python không?

Cả Python và React là những lựa chọn tuyệt vời để tạo một ứng dụng web. Khi sử dụng chúng, bạn sẽ nhận thấy rằng một số tính năng, chẳng hạn như trang trí Python, và móc nối, là giống hệt nhau.

Chỉ có một vài thay đổi trong Cú pháp mã và mô hình dữ liệu/nguyên tắc chuyển giao, chẳng hạn như cách xác định các hàm và cách dữ liệu trong thành phần React được quản lý khác với dữ liệu trong lớp Python.

Là một nhà phát triển Python, Learning React rất quan trọng khi xây dựng phía máy chủ của các ứng dụng web của bạn. Cảm ơn bạn đã đọc, và mã hóa hạnh phúc !!

Khả năng hiển thị đầy đủ vào các ứng dụng phản ứng sản xuất

Gỡ lỗi các ứng dụng React có thể khó khăn, đặc biệt là khi người dùng gặp phải các vấn đề khó sao chép. Nếu bạn quan tâm đến việc theo dõi và theo dõi trạng thái Redux, tự động xuất hiện các lỗi JavaScript và theo dõi các yêu cầu mạng chậm và thời gian tải thành phần, hãy thử logrocket.

Hướng dẫn can you use react with python backend? - bạn có thể sử dụng phản ứng với chương trình phụ trợ python không?
Hướng dẫn can you use react with python backend? - bạn có thể sử dụng phản ứng với chương trình phụ trợ python không?

Logrocket giống như một DVR cho các ứng dụng web và di động, ghi lại mọi thứ xảy ra trên ứng dụng React của bạn. Thay vì đoán tại sao các vấn đề xảy ra, bạn có thể tổng hợp và báo cáo về trạng thái của ứng dụng của bạn khi xảy ra vấn đề. Logrocket cũng theo dõi hiệu suất của ứng dụng của bạn, báo cáo với các số liệu như tải CPU của máy khách, sử dụng bộ nhớ máy khách và hơn thế nữa.

Gói Logrocket Redux Middleware bổ sung thêm một lớp hiển thị vào các phiên người dùng của bạn. Logrocket ghi lại tất cả các hành động và nêu từ các cửa hàng Redux của bạn.

Hiện đại hóa cách bạn gỡ lỗi ứng dụng React của mình - bắt đầu giám sát miễn phí.

Python và phản ứng có thể được sử dụng cùng nhau không?

Đúng. React chủ yếu là bất khả tri về những gì đang diễn ra ở cấp độ máy chủ. tức là nó không quan tâm những gì bạn sử dụng.. React is mostly agnostic of what's going on at the server-level. ie it does not care what backend you use.

Bạn có thể sử dụng React với bất kỳ phụ trợ nào không?

Không. React là một thư viện JavaScript phía trước. React có khả năng thực hiện các cuộc gọi API (gửi yêu cầu đến phần phụ trợ), liên quan đến dữ liệu. React không thể xử lý cơ sở dữ liệu hoặc chính nguồn dữ liệu.React is capable of making API calls (sending the request to the backend), which deal with the data. React cannot process the database or the data source itself.

Bế trợ nào để sử dụng với React?

2. nodejs.Nodejs được coi là một đối tác phụ trợ hoàn hảo của React JS vì các tính năng tương thích tuyệt vời của nó.Cả thư viện mặt trước và phụ trợ đều sử dụng cùng một ngôn ngữ JavaScript cho phép chúng phát triển các ứng dụng hiện đại.

Tôi có thể sử dụng React cho Frontend và Django cho phụ trợ không?

Với Django cho phụ trợ và phản ứng cho Frontend, không gì có thể ngăn bạn tạo một ứng dụng web xuất sắc..

Có thể phản ứng và django được sử dụng cùng nhau không?

Thiết lập ứng dụng React của chúng tôi để tích hợp với Django, chúng tôi sẽ sử dụng Bootstrap với React để tạo kiểu với gói phản ứng mạnh mẽ.Chúng tôi cũng sẽ sử dụng các Axios máy khách HTTP dựa trên lời hứa để thực hiện các cuộc gọi yêu cầu HTTP đến API Django của chúng tôi. We'll use Bootstrap with React for styling with the powerful reactstrap package. We'll also use the promise-based HTTP client Axios to make HTTP request calls to our Django API.

Có thể sử dụng pycharm để phản ứng không?

Pycharm tích hợp với React cung cấp hỗ trợ trong việc cấu hình, chỉnh sửa, lót, chạy, gỡ lỗi và duy trì các ứng dụng của bạn. providing assistance in configuring, editing, linting, running, debugging, and maintaining your applications.