Flutter:通过小部件树传递列表实例 - >不改变列表中实例的值

Flutter: Pass instance of list through widget tree -> is not changing the values of instances in list

我有一个包含项目列表的主屏幕 (List<book> listOfBooks)。在子小部件中,我有一个 gridView 创建小部件 BookItem() 的项目。

我的问题是当我向 BookItem() 传递参数书时,它是书本身并在小部件 BookItem 中更改它,它不会更改 listOfBooks 中书的值。

我希望这不会造成混淆。我的问题是:是否创建了一个与 listOfBooks 无关的新实例,还是我犯了任何其他错误?

如果你这样拿listBooks的书:

listBooks.map((book){
  return itemBook(book);
}).toList();

而into itemBook尝试改书,需要更新item into listBook。这会正确更新列表:

listBooks[indexBookSelected] = bookUpdated;

这不起作用:

book = bookUpdated;

当然改书后需要调用setState来更新视图