問題タブ [bloc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2261 参照

flutter - フラッターブロックパターンを使用してページングでデータのリストをロードするにはどうすればよいですか?

アプリケーションで flutter_bloc を使用しており、このサンプルを参照しています。アプリケーションを実行すると、次のようなエラーが表示されます。

フラッター: タイプ 'MovieUninitialized' はタイプ キャストのタイプ 'MovieLoaded' のサブタイプではありません

私のブロックには、movie_state、movie_event、movie_bloc の 3 つのファイルが含まれています。

movie_state.dart

movie_event.dart

movie_bloc.dart

最大制限に達するまで latestMoviesPage をインクリメントする必要があります。ブロック コードから latestMoviesPage を削除すると問題は解決しますが、より多くのページを読み込むには本当に必要です。

0 投票する
1 に答える
396 参照

flutter - Flutter Navigator.pop() は、ダイアログ ボックスを黒い影の背景で部分的に表示したままにします

長い説明で申し訳ありませんが、トピックについて非常に明確にする必要があると思います.

私はここ数週間、この問題に取り組んできました。flutter_bloc パッケージを使用しています。

検索ボックスとリストビューを備えた単純な検索ページ (ProposalSearchPage) があります。Listview は、KeywordsearchEvent をディスパッチする検索キーワードに基づいて構築されます。設定アイコンをクリックするとダイアログボックスページであるProposalSearchSettingページが開きます。

この構造に基づいて、ブロックで使用される 2 つのイベントがあります。1 つはキーワード検索用で、もう 1 つは高度なフィルター検索用です。

フィルターを適用した後、事前にページを検索します。ボタン内で FilterSearchEvent をディスパッチし、Navigation.pop(context) を使用して ProposalSearchPage に戻りました。状態の変化に基づいて両方の検索でリストビューがレンダリングされますが、Adavance フィルター検索では、ProposalSearchSetting ダイアログ ボックスが部分的に表示されます。そこにあるフィルターボタンはクリック可能です。戻る矢印ボタンをクリックすると消えます。

Navigator.pop がスタックをポップするのではなく、スタックにページを追加する理由がわかりません。

}

0 投票する
1 に答える
1291 参照

flutter - Flutter アプリをホット リロードしようとすると、アプリ全体が再起動する

Flutter アプリに取り組んでいますが、更新された変更を確認するためにアプリを保存するたびに、アプリ全体がリロードされることに気付きました。開いているページは、新しい変更を加えてホットリロードすることを期待しています。

私のウィジェットツリーの編成方法がこれに影響を与える可能性があると思います。私のアプリ全体は、起動時に実行され、ServicesLoadingState に初期化されるウィジェットにラップされています。次に、サービスが (BLoC で) 起動を完了すると、ServicesReadyState が生成され、すべてのウィジェットが描画されます。ホット リロードすると、最上位のウィジェットの状態が ServicesLoadingState に戻り、サービスがリロードされ、発生している動作が表示されると思います。

「フラッター ホット リロード リスタート アプリ」をグーグルで検索してみましたが、これを防ぐための良いヒントが見つかりませんでした。ホットリロードがアプリ全体を再起動しないようにするにはどうすればよいですか?

0 投票する
6 に答える
7197 参照

flutter - showModalBottomSheet 内の提供された (Provider.of()) 値にアクセスする方法は?

BlocProviderfrom flutter_blocを持つウィジェットツリー内に FloatingActionButton があります。このようなもの:

モーダルボトムシートを開きます:

内部SomeBlocを使用してアクセスしようとしていますが、次のエラーが発生します。BlocProvider.of<SomeBloc>(context)TheBottomSheet

https://stackoverflow.com/a/56533611/2457045で説明されているソリューションを使用しようとしましたが、 でのみ機能しBottomSheet、 では機能しませんModalBottomSheet


注: これはBlocProviderまたはに限定されませんflutter_blocプロバイダーパッケージのすべてのプロバイダーは、同じ動作をします。

BlocProvider.of<SomeBloc>(context)の内部にアクセスするにはどうすればよいshowModalBottomSheetですか?

それができない場合、https://stackoverflow.com/a/56533611/2457045ソリューションをモーダルボトムシートに適応させる方法は?

0 投票する
6 に答える
13148 参照

flutter - 1 つのウィジェットの子リスト内でグローバル キーが複数回使用されました

アプリを閉じた後、もう一度開こうとすると、次のエラーが表示されますが、これは iOS プラットフォームでのみ発生し、Android は正常に動作します。

ここに画像の説明を入力

私は周りを見回しましたが、この問題についていくつかのSOの質問と問題がありますが、解決できませんでした. 状態の管理にもblocパターンを使用しています。

私は私GlobalKey<FormState>の中に持っていAuthenticateFormます。

Flutter (チャネル安定版、v1.7.8+hotfix.4、Microsoft Windows [バージョン 10.0.17763.615]、ロケール en-GB)

0 投票する
1 に答える
107 参照

flutter - ブロック シンクは null と呼ばれていました

イメージピッカーを使用しました。追加後にプロフィール写真を割り当てる必要があります。前回 setState() を使用しましたが、機能しませんでした。

私のブロッククラスは次のようになります。

Player クラス このクラスは StatefullWidget です

drawerこれは一般的な引き出しです。私は他のクラスでこのメソッドを使用しました。他のクラスでは、ブロック パラメータに null を渡しました

設定値のブロックをシンクに渡しました..

ProfilePop クラス

0 投票する
1 に答える
1045 参照

flutter - flutter BLoC で placeID を変更した後、データが更新されない

私は BLoC を使用して 1 つのプロジェクトに取り組んでいます。データを更新するクラスをいくつか作成しました。placeID を渡すと、データが取得されます。ただし、初めて PlaceID を渡すと、データとウィジェットが更新されます。しかし、新しい placeID を渡すと、古いデータは更新されません。古いデータを示しています。

すべてのコード ファイル:

RestaurantDetailBloc.dart

LoadRestaurantDetailEvent.dart

RestaurantDetailPage.dart

RestaurantDetailProvider.dart

InRestaurantDetailState.dart

RestaurantDetailScreenState.dart

みんな助けてください。私は一日中過ごしました。前もって感謝します。

0 投票する
1 に答える
107 参照

flutter - フラッターブロックのログイン状態は常に失敗を示します

私はflutter_blocでログインアプリを書いていますが、いくつかの問題に直面しています!

  1. ログインした後、クライアントからの応答キーを持っていてもログインに失敗したと表示され、 共有設定にも表示されます。読み込み以外は常に失敗します。ログは次のとおりです。

    /li>

上記を削除すると、 state-success trueyield LoginState.success()が返されます。3 . アプリを終了して再度入力すると、以下のように認証済みと表示されます...

0 投票する
1 に答える
380 参照

flutter - Flutter - 依存性注入を使用するときにストリームを閉じるタイミング

MyWidget で BLoC をインスタンス化する場合、通常は a を使用し、次のようStatefulWidgetにメソッドでストリームを閉じます。dispose

ただし、提供された MyBloc のインスタンスを MyWidget に (おそらく MyWidget のコンストラクターを介して)挿入すると、ユーザーがナビゲートしたり戻ったりしたときに MyWidget が新しい Stream を持つ MyBloc の新しいインスタンスを取得しないため、ウィジェット階層の上位のストリームを閉じます。 MyWidget へ

これによりメモリリークが発生しますか?

0 投票する
2 に答える
4408 参照

flutter - super.dispose() を呼び出す必要がありますか?

この記事で Dart と Bloc パターンを学んでいます。次のようなレポオーサーコールsuper.dispose();で:

オプションまたは必須の呼び出しかどうかわかりませんか?