Firestore Streambuilder作为未来小部件

时间:2019-04-28 12:51:51

标签: firebase dart flutter google-cloud-firestore

我有一个简单的示例,我想从Cloud Firestore中读取一些内容。

import 'package:flutter/material.dart';
import 'package:cloud_firestore/cloud_firestore.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: "Test",
      home: Scaffold(
        body: Center(child: readFromFirestore()),
      ),
    );
  }
}

Widget readFromFirestore() {
  StreamBuilder(
      stream:
          Firestore.instance.collection('users').document('test').snapshots(),
      builder: (context, snapshot) {
        if (!snapshot.hasData) {
          return Text("Loading...");
        }
        var userDocument = snapshot.data;
        return Text(userDocument["name"]);
      });
}

我想创建独立的firebase函数,例如读取,写入,更新等,而且我认为它们应该是Future。我如何在下面将此功能设置为Future?

Future <Widget> readFromFirestore()

但这不起作用...我的意思是我不能在上面的Center( )中使用它;

0 个答案:

没有答案