Получил ошибку в Fullter ‘Попробуйте исправить имя на имя существующего именованного параметра’, который пытается импортировать модели классов

#json #flutter #dart

#json #flutter #dart

Вопрос:

Я просто создаю таблицу классов в моделях flutter и теперь пытаюсь назначить в форме json. Я создаю таблицу классов из quicktype, которую я получил, как показано ниже

 // To parse this JSON data, do
//
//     final table = tableFromJson(jsonString);

import 'dart:convert';

Table tableFromJson(String str) => Table.fromJson(json.decode(str));

String tableToJson(Table data) => json.encode(data.toJson());

class Table {
  Table({
    this.name,
    this.seat,
  });

  String name;
  String seat;

  factory Table.fromJson(Map<String, dynamic> json) => Table(
        name: json["name"],
        seat: json["seat"],
      );

  Map<String, dynamic> toJson() => {
        "name": name,
        "seat": seat,
      };
}
  

Теперь я пытаюсь присвоить имя и место, но получил ошибку

     Table data = Table(name: inputTable.text, seat: inputSeat.text);
    http.Response response = await Connect().post('table/create/', data);
  }
  

Моя ошибка

Именованный параметр ‘name’ не определен. Попробуйте исправить имя на имя существующего именованного параметра или определить именованный параметр с именем ‘name’.

Комментарии:

1. Table(this.name,this.seat); Удалить {} .

2. Все еще есть ошибка в имени фабрики factory Table.fromJson(Map<String, dynamic> json)

3. это та же ошибка?

4. Нет, теперь ошибка меняется на внутри фабрики в models / table.dart

5. Из первой ошибки, которую вы опубликовали, она находится в какой строке?

Ответ №1:

Вы должны изменить имя своего classname и имя конструктора, поскольку они могут быть обратными классами материала

Комментарии:

1. Большое вам спасибо. Теперь я перехожу на tablelist, и он работает нормально.