Trình tạo Dart từ JSON

Đầu vào: JSON

Đang tải trình soạn thảo…

Dart đã Tạo

Configuration

Nhập dữ liệu JSON để tạo lớp Dart

Lớp với null safety và JSON serialization

Cách chuyển đổi JSON sang Dart – hướng dẫn từng bước

Sử dụng trình tạo JSON to Dart này để tạo các lớp Dart không an toàn từ các mẫu JSON cho ứng dụng Flutter và dịch vụ Dart.

  1. Bước 1 – Dán mẫu JSON

    • Dán đối tượng hoặc mảng JSON đại diện vào trình soạn thảo bên trái.
    • Bao gồm các đối tượng lồng nhau, mảng và các trường có thể rỗng để các kiểu được suy ra chính xác.
    • Sử dụng Import để tải JSON từ tệp, URL hoặc dữ liệu mẫu.
  2. Bước 2 – Chọn tùy chọn lớp Dart

    • Đặt Class Name cho mô hình gốc (ví dụ Root).
    • Bật tính năng an toàn vô giá trị và xác nhận cách trình bày các trường tùy chọn (String?).
    • Nếu bạn sử dụng tính năng tạo mã, hãy chọn kiểu tuần tự hóa (như json_serializable).
  3. Bước 3 – Xem lại mã được tạo

    • Kiểm tra tên trường, loại và cách mô hình hóa mảng/đối tượng.
    • Điều chỉnh các tùy chọn như Root Type Name, xử lý null và khung nếu có.
    • Nếu một trường được suy ra không chính xác, hãy điều chỉnh JSON mẫu của bạn và tạo lại.
  4. Bước 4 – Sử dụng các mô hình trong Flutter/Dart

    • Thêm các lớp đã tạo vào dự án của bạn (ví dụ: trong lib/models).
    • Phân tích cú pháp JSON thành các mô hình có nhà máy fromJson hoặc các bộ tuần tự hóa được tạo.
    • Chạy flutter format để giữ đầu ra nhất quán với kiểu dự án của bạn.
  5. Bước 5 – Sao chép hoặc tải xuống

    • Sao chép đầu ra vào dự án của bạn hoặc tải xuống dưới dạng tệp.
    • Chạy trình định dạng/linter để phù hợp với kiểu mã của bạn.
    • Thêm thư viện phân tích cú pháp/tuần tự hóa JSON nếu ngôn ngữ của bạn yêu cầu chúng.

Mẹo nhanh

  • Giữ các lớp mô hình nhỏ và kết hợp các kiểu lồng nhau cho rõ ràng.
  • Chỉ sử dụng phân tích cú pháp DateTime khi định dạng API của bạn nhất quán.
  • Ưu tiên các bộ tuần tự được tạo cho các mô hình lớn để giảm lỗi ánh xạ thủ công.
Đầu ra ví dụ (đơn giản hóa)
// đầu vào JSON
{
  "id": 123,
  "name": "Maeve Winters",
  "email": "[email protected]",
  "active": true,
  "roles": ["admin", "editor"],
  "metadata": { "plan": "pro" },
  "createdAt": "2024-03-01T10:15:00Z",
  "score": 99.5,
  "notes": null
}

// Generated Dart models (simplified)
class Metadata {
  final String plan;
  const Metadata({required this.plan});
}

class Root {
  final int id;
  final String name;
  final String? email;
  final bool active;
  final List<String> roles;
  final Metadata metadata;
  final String createdAt;
  final double score;
  final Object? notes;

  const Root({
    required this.id,
    required this.name,
    required this.email,
    required this.active,
    required this.roles,
    required this.metadata,
    required this.createdAt,
    required this.score,
    required this.notes,
  });
}

Công cụ JSON & Dart liên quan

Khám phá thêm các công cụ JSON và lược đồ hoạt động hiệu quả cùng với trình tạo JSON sang Dart này.

Câu hỏi thường gặp

Hỗ trợ những tính năng Dart nào?

Trình tạo tạo lớp Dart với type safety phù hợp, hỗ trợ cả JSON serialization thủ công và package json_annotation, dùng nullable types cho giá trị null và tuân theo quy ước đặt tên của Dart.

json_annotation hoạt động như thế nào?

Khi chọn framework json_annotation, lớp được tạo sử dụng annotation @JsonSerializable() và tạo tự động fromJson/toJson bằng build_runner. Điều này cung cấp JSON serialization an toàn về kiểu.

Giá trị nullable được xử lý như thế nào?

Giá trị null trong JSON được ánh xạ sang nullable types (?) trong Dart. Trường bắt buộc sử dụng keyword 'required' trong constructor theo nguyên tắc null safety của Dart.

Hệ thống kiểu Dart được áp dụng ra sao?

Mã Dart tạo ra tận dụng hệ thống kiểu mạnh với các kiểu phù hợp (int, double, String, bool, List, Map) và tuân theo quy ước Dart như camelCase cho tên trường.

Generator JSON sang Dart | JSONSwiss