【发布时间】:2021-12-30 21:17:49
【问题描述】:
我有这个问题:
参数类型“Future”不能分配给参数类型“String”
我的代码:
CupertinoButton(
child: Text("OK"),
onPressed: () async {
print("- start customer creation -. ");
if (_key.currentState!.validate()) {
await firebase.newCustomerSetup(
email: _emailController.text, name: input, companyID: FirebaseController().getCompanyID());
setState(() {});
//UpdateListViewBuilder
}
},
),
Future getCompanyID() async{
var firebaseUser = FirebaseAuth.instance.currentUser;
FirebaseFirestore.instance
.collection("Company")
.doc(firebaseUser!.uid)
.get()
.then((value) {
return value.data()!["companyID"];
});
}
我可以在没有 Future Builder 的情况下获取并粘贴公司 ID 吗?
情况如下:我有一个软件供公司和他们的客户使用。公司可以在软件中创建客户资料(注册他们,客户将获得访问电子邮件),客户将显示在公司方面的 ListView 中。
我的问题是,每个新注册的公司都可以在 ListView 中看到所有客户(也来自其他公司),因为所有客户都将粘贴到一个集合中。我的解决方案是,每家公司都会获得一个 ID,并且在公司注册新客户后,该 ID 也会粘贴到客户集合中。然后只有在 CustomerID == CompanyID 的情况下,客户才会显示在正确的公司资料 (ListView) 中。
【问题讨论】:
标签: firebase flutter dart google-cloud-firestore