CẬP NHẬT: Tôi đã tìm thấy nhận xét rất hữu ích dưới bài đăng của mình mà tôi muốn chia sẻ với bạn như một điều bổ sung cho nội dung chính:
Về việc thiếu các ví dụ, bạn có thể tìm thấy người dùng repo tuyệt vời, có nhiều ví dụ khác nhau về cách sử dụng CRUD của Falcor:
https://github.com/przeor/awclaw-falcorjs ... Điều thứ hai, có một cuốn sách tên là " Nắm vững phát triển phản ứng toàn ngăn xếp "bao gồm cả Falcor (cách tốt để học cách sử dụng nó):
BÀI VIẾT TỔ CHỨC DƯỚI ĐÂY:
FalcorJS ( https://www.facebook.com/groups/falcorjs/ ) đơn giản hơn nhiều để có hiệu quả so với Relay / GraphQL.
Đường cong học tập cho GraphQL + Relay là LỚN:
Trong tóm tắt ngắn gọn của tôi: Đi cho Falcor. Sử dụng Falcor trong dự án tiếp theo của bạn cho đến khi BẠN có ngân sách lớn và nhiều thời gian học tập cho nhóm của bạn sau đó sử dụng RELAY + GRAPHQL.
GraphQL + Relay có API khổng lồ mà bạn phải có hiệu quả. Falcor có API nhỏ và rất dễ nắm bắt đối với bất kỳ nhà phát triển front-end nào quen thuộc với JSON.
Nếu bạn có một dự án AGILE với nguồn lực hạn chế -> thì hãy tìm FalcorJS!
Ý kiến ĐỐI TƯỢNG CỦA TÔI: FalcorJS dễ dàng hơn 500% để có hiệu quả trong javascript đầy đủ.
Tôi cũng đã xuất bản một số bộ khởi động FalcorJS trong dự án của mình (+ các dự án ví dụ đầy đủ hơn của falcor): https://www.github.com/przeor
Để biết thêm chi tiết về kỹ thuật:
1) Khi bạn đang sử dụng Falcor, thì bạn có thể sử dụng cả trên front-end và backend:
nhập khẩu falcor từ 'falcor';
và sau đó xây dựng mô hình của bạn dựa trên.
... bạn cũng cần hai thư viện đơn giản để sử dụng trên phụ trợ: a) falcor-express - bạn sử dụng nó một lần (ví dụ: app.use ('/ model.json', FalcorServer.dataSourceRoute (() => tên mới ())) ). Nguồn: https://github.com/przeor/falcor-netflix-shopping-cart-example/blob/master/server/index.js
b) falcor-router - ở đó bạn xác định các tuyến SIMPLE (ví dụ : tuyến đường: '_view.length' ). Nguồn:
https://github.com/przeor/falcor-netflix-shopping-cart-example/blob/master/server/router.js
Falcor là miếng bánh về phương diện học tập.
Bạn cũng có thể xem tài liệu đơn giản hơn nhiều so với lib của FB và cũng xem bài viết " tại sao bạn nên quan tâm đến falcorjs (netflix falcor) ".
2) Relay / GraphQL giống như một công cụ doanh nghiệp khổng lồ.
Ví dụ: bạn có hai tài liệu khác nhau mà riêng biệt đang nói về:
a) Rơle: https://facebook.github.io/relay/docs/tutorial.html
- Container - Tuyến đường - Root Container - Trạng thái sẵn sàng - Đột biến - Lớp mạng - Plugin chuyển tiếp Babel - GRAPHQL
- Đặc điểm kỹ thuật chuyển tiếp GraphQL
- Nhận dạng đối tượng
- Kết nối
- Đột biến
- Đọc thêm
THAM KHẢO API
Rơle
- RelayContainer
- Rơle
- Rơle.RootContainer
- Tiếp sức.QL
- Rơle
- Rơle.PropTypes
- Tiếp sức
GIAO DỊCH
RelayNetworkLayer
- RelayMutingRequest
- RelayQueryRequest
b) GrapQL: https://facebook.github.io/graphql/
- 2 Ngôn ngữ
- 2.1 Nguồn văn bản
- 2.1.1 Mã số
- 2.1.2 Không gian trắng
- 2.1.3 Thiết bị đầu cuối dây
- 2.1.4 Phần
- 2.1.5 Dấu phẩy không đáng kể
- 2.1.6 Mã thông báo chính thức
- 2.1.7 Mã thông báo được nhận
- 2.1.8.
- 2.1.9Tên
- Tài liệu 2.2Query
- 2.2.1 Hoạt động
- 2.2.2 Bộ phụ kiện
- 2.2.3 Lợi nhuận
- 2.2.4Kiến thức
- 2.2.5 Bí danh năng suất
- 2.2.6Fragment
- 2.2.6.1 Loại điều kiện
- 2.2.6.2 Đoạn nội tuyến
- 2.2.7 Giá trị đầu vào
- Giá trị 2.2.7.1Int
- 2.2.7.2 Giá trị gia tăng
- 2.2.7.3 Giá trị động học
- 2.2.7.4 Giá trị thanh toán
- Giá trị 2.2.7.5Enum
- 2.2.7.6 Giá trị danh sách
- 2.2.7.7 Giá trị đối tượng đầu vào
- 2.2.8 Biến
- 2.2.8.1 Sử dụng có thể thay đổi trong Fragment
- 2.2.9 Các loại thông số
- 2.2.10 Hướng dẫn
- 2.2.10.1 Chỉ thị khuyến khích
- Hệ thống 3Type
- 3,1 loại
- 3.1.1Sarars
- 3.1.1.1 Được tích hợp vô hướng
- 3.1.1.1.1Int
- 3.1.1.1.2Float
- 3.1.1.1.3String
- 3.1.1.1.4Boolean
- 3.1.1.1.5ID
- 3.1.2 Dự án
- 3.1.2.1Oject đối số trường
- 3.1.2.2 Khấu hao trường dự án
- 3.1.2.3 Xác thực loại dự án
- 3.1.3 Giao diện
- 3.1.3.1 Xác thực kiểu khuôn mặt
- 3.1.4 Liên minh
- 3.1.4.1 Xác thực loại
- 3.1.5Enums
- 3.1.6 Đối tượng đầu vào
- 3.1.7Lists
- 3.1.8Không
- 3.2 Hướng dẫn
- 3.2.1@skip
- 3.2.2 @ bao gồm
- 3.3 Các loại khởi động
- 4 Hướng dẫn
- 4.1 Nguyên tắc chung
- 4.1.1 Quy ước đặt hàng
- 4.1.2 Tài liệu
- 4.1.3 Đánh giá cao
- 4.1.4 Loại tên nội quan
- 4.2Schema nội tâm
- 4.2.1 Loại "__Type"
- 4.2.2 Các loại
- 4.2.2.1Sarar
- 4.2.2.2
- 4.2.2.3Union
- 4.2.2.4Trình mặt
- 4.2.2.5Enum
- 4.2.2.6 Đối tượng đầu vào
- 4.2.2.7 Liệt kê
- 4.2.2.8Không
- 4.2.2.9 Danh sách kết hợp và không Null
- 4.2.3 Loại __Field
- 4.2.4 Loại __InputValue
- 5Validation
- 5.1Operations
- 5.1.1 Định nghĩa hoạt động được đặt tên
- 5.1.1.1Operation Tên duy nhất
- 5.1.2 Định nghĩa hoạt động đồng nghĩa
- 5.1.2.1 Hoạt động ẩn danh
- 5,2 Lợi nhuận
- 5.2.1 Lựa chọn năng suất trên các loại đối tượng, giao diện và các loại kết hợp
- 5.2.2 Kết hợp lựa chọn năng suất
- 5.2.3 Lựa chọn trường trống
- 5.3Argument
- 5.3.1 Tên biểu tượng
- 5.3.2Argument tính độc đáo
- 5.3.3 Giá trị bản quyền Loại chính xác
- 5.3.3.1 Giá trị tương thích
- 5.3.3.2 Lý luận đầy đủ
- 5.4Fragment
- 5.4.1 Tuyên bố
- 5.4.1.1 Tên duy nhất
- 5.4.1.2 Hiện diện loại lây lan
- 5.4.1.3Fragments trên các loại hỗn hợp
- 5.4.1.4Fragments phải được sử dụng
- 5.4.2 Lan truyền
- 5.4.2.1 Mục tiêu lây lan được xác định
- 5.4.2.2 Lan truyền không được tạo thành chu kỳ
- 5.4.2.3 Lan truyền có thể xảy ra
- 5.4.2.3.1Object lây lan trong phạm vi đối tượng
- 5.4.2.3.2. Chênh lệch chênh lệch trong phạm vi đối tượng
- 5.4.2.3.3Object lây lan trong phạm vi trừu tượng
- 5.4.2.3.4 lây lan trong phạm vi trừu tượng
- 5,5 giá trị
- 5.5.1 Tính duy nhất của trường đối tượng
- 5.6 Hướng dẫn
- 5.6.1 Các hướng dẫn được xác định
- 5,7 Biến
- 5.7.1 Tính duy nhất có thể thay đổi
- 5.7.2 Các giá trị mặc định có thể thay đổi được nhập chính xác
- 5.7.3 Biến là loại đầu vào
- 5.7.4Tất cả các biến sử dụng được xác định
- 5.7.5Tất cả các biến được sử dụng
- 5.7.6Tất cả các cách sử dụng biến được phép
- 6 Thi hành
- 6.1 Yêu cầu định giá
- Biến số 6.2Cocing
- 6.3 Hoạt động định giá
- 6.4 Bộ định giá
- 6.5 Đánh giá một tập hợp trường được nhóm
- 6.5.1 Mục nhập năng suất
- 6.5.2 Đánh giá bất thường
- 6.5.3 Thực thi lệnh
- 6.5.4Error xử lý
- 6.5.5Khả năng
- 7 phản hồi
- Định dạng 7.1Serialization
- 7.1.1
- Định dạng 7.2Response
- 7.2.1Data
- 7.2.2 Gương
- Phụ lục: Công ước ký hiệu
- A.1 Ngữ pháp không có nội dung
- A.2 Ngữ pháp học và ngữ pháp
- Ký hiệu A.3Grammar
- A.4Grammar Semantics
- A.5 Thuật toán
- Phụ lục: Tóm tắt ngữ pháp
- Mã thông báo B.1Ignored
- Mã thông báo B.2Lexical
- Tài liệu B.3Query
Đó là sự lựa chọn của bạn:
Falcor JS VERSUS tài liệu đơn giản và ngọt ngào Công cụ cấp doanh nghiệp lớn với tài liệu dài và nâng cao là GraphQL & Relay
Như tôi đã nói trước đây, nếu bạn là một nhà phát triển hàng đầu nắm bắt ý tưởng sử dụng JSON, thì việc triển khai biểu đồ JSON từ nhóm của Falcor là cách tốt nhất để thực hiện dự án phát triển toàn bộ ngăn xếp của bạn.