我是Flutter和Dart的新手。 我有一個帶有 _user 變數的 Stateful 類。 我想在我對Firestore的查詢中使用這個變數。 在_usersStream中,"this "和"_user "都不可用(我相信這是一個工廠)。
我如何訪問_user?
class _UserTermsState extends State< UserTerms> {
late User _user;
bool _isSigningOut = false。
final Stream<QuerySnapshot> _usersStream = FirebaseFirestore.instance
.collection('somecol')
.where('uid', isEqualTo: this._user.uid)
.orderBy('createdAt', descending: true)
.snapshots()。
@override
Widget build(BuildContext context) {
return StreamBuilder<QuerySnapshot> (
流。_usersStream,
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {
return Scaffold( and so on。
uj5u.com熱心網友回復:
你不能在一個初始化器中訪問實體成員'_user'。
試一下:
class _UserTermsState extends State< UserTerms> {
late User _user;
bool _isSigningOut = false。
@override
Widget build(BuildContext context) {
return StreamBuilder<QuerySnapshot> (
流。FirebaseFirestore.instance
.collection('somecol')
//確保_user在build被呼叫之前已經被定義。
.where('uid', isEqualTo: _user.uid)
.orderBy('createdAt', descending: true)
.snapshots()。
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/313104.html
標籤:
