在颤振中,我使用FutureBuilder显示来自API的数据。当出现错误时,我想弹出一个错误对话框。
但是,当我调用showDialog()时,它会引发错误。
setState() or markNeedsBuild() called during build.
这是我的密码
return FutureBuilder(
future: xxx,
builder: (context, snapshot) {
if (snapshot.hasData) {
//DO SOMETHING
} else if (s
在颤栗中,我得到了不必要的重建。在我的例子中,我使用FutureBuilder通过获取db结果来显示列表,这是一个未来,并且依赖于查询参数。如果查询参数不改变,我试图使FutureBuilder的未来不会改变,但是每次都会调用FutureBuilder的builder块。我怎样才能使FutureBuilder在未来不改变的情况下不重建自己。
下面是我的代码,每当MusicList2的父部件构建时,MusicList2 get重建,它的FutureBuilder重新构建。
class MusicList2 extends StatefulWidget {
final MusicRowActi
要检查用户: FutureBuilder(
future: _userFuture,
builder: (_,userData){
switch(userData.connectionState){
case ConnectionState.none:
case ConnectionState.waiting:
case ConnectionState.active:
case ConnectionState.done:
if(!newU
我正在制作一个页面,其中包含一些相互交互的dropboxes和一个Futurebuilder包装的ListView。 当Dropbox改变并点击checkbox时,我调用了'setState‘。然而,由于checkbox的onChanged中的setState,Futurebuilder不断被调用,并且ListView被重新构建。因此,当点击复选框时,整个列表视图都会闪烁,就像下面的视频一样。 ? 我想保留Listview and update only复选框。有谁能帮我吗?谢谢你。 完整的代码是 class _StatefulDialogWidgetState extends St
我试图根据FutureBuilder收到的结果来设置状态,看起来这是不可能的,因为FutureBuild还在构建,有什么想法吗?
错误:
The following assertion was thrown building FutureBuilder<String>(dirty, state: _FutureBuilderState<String>#db9f1):
setState() or markNeedsBuild() called during build.
This StatefulBuilder widget cannot be marked as ne
我想在我的FutureBuilder中获得一些json数据,但是出于某种原因,我的代码会抛出一个
_TypeError (type '_JsonQuerySnapshot' is not a subtype of type 'Map<dynamic, dynamic>')
每当我试图将AsyncSnapshot解压缩到地图中时。
FutureBuilder(
future: getFiyat(),
builder: (BuildContext context, AsyncSnapshot snapshot) {
if
使用flutter 2.x和Get package版本^4.1.2。
我有一个像这样的小部件:
class InitializationScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: FutureBuilder(
future:
// this is just for testing purposes
Future.delayed(const Du
我想将由RichText构建的FutureBuilder的位置呈现为下面的代码,我在initState()中使用了WidgetsBinding.instance.addPostFrameCallback,但是我得到了一个错误:The method 'findRenderObject' was called on null.,我尝试了没有FutureBuilder工作的方法,我不知道如何用FutureBuilder来解决这个问题。
class BookScreen extends StatefulWidget {
int bookId;
BookScreen(this.b
我想更新标题小部件后,未来的建设者,它从DB获得数据。
考虑一下这个简化的代码
Column (
children: [
Text('Data is loading'), // I want to changed it into `Data is loaded`
FutureBuilder(
builder: (BuildContext context, AsyncSnapshot snapshot) {
if (snapshot.data == null) {
return Center(
child: CircularProgr
下面是使用StatefulWidget的通用FutureBuilder的代码模拟。当FutureBuilder实例化时,我得到以下错误:
type '(User) => Future<List<User>>' is not a subtype of type '(dynamic) => Future<List<dynamic>>'
我怀疑错误是编译器不知道T和U是相同的,所以U被声明为动态的,而T则声明为User?如何更改此代码,以便将用于StatefulWidget中的泛型的类型传递给状态小部件?
W