Practical Flutter by Frank Zammetti

Practical Flutter by Frank Zammetti

Author:Frank Zammetti
Language: eng
Format: epub
ISBN: 9781484249727
Publisher: Apress


Ah, it’s the beginning of a widget! Most importantly, note that it’s a stateless widget. Remember: using scoped_model means you’re dealing with state, but that doesn’t imply you have to have stateful widgets. Stateful widgets are effectively another approach to state, an approach we’re not using in this app (in this source file or any other).

After that, we find a constructor:Notes() {

notesModel.loadData("notes", NotesDBWorker.db);

}

Recall that the BaseModel has a loadData() method and it was written generically so it would work with any entity type. However, the only reason it can be written generically like that is that the constructor here calls it and provides the entity-specification information it needs, namely the entity type and a reference to the database for this entity type (the database stuff is coming up!). The result of this call is that entityList in the model will have a list of notes loaded into it from the SQLite database and so when the list screen is built, they will be displayed. Technically, since this data load is asynchronous, the list screen can and usually is built before the data is available, but due to it being wrapped in scoped_model and loadData() calling notifyListeners() when the data is loaded, the screen gets notified when the data is available and re-paints to show the data, all of which happens quickly.Widget build(BuildContext inContext) {



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.