我正在学习有关使用 Dart 进行异步编程的课程,但出于某种原因,我有点困惑。我想我理解您应该如何使用异步函数的概念,当它可能需要一些时间时,而不是阻塞和冻结您的应用程序,而是使用异步函数,以便执行下一个代码块或方法,以及何时执行异步函数完成或准备好执行。(如果我的理解有缺陷,请告诉我)
但是,我并没有真正了解 Future<> 部分。我知道它可以用作异步函数的返回类型,因为本质上你是说该函数现在返回一个未来的对象,但让我们在它完成后回到它。但是我的导师有点让我困惑,有时她有一个 future 作为返回类型,而另一次她没有把它放在那里,它们都是异步函数。所以现在我很难理解什么时候需要明确声明 Future 返回类型,即使它是无效的?也不只是使用 async 并等待一个函数已经创建了一个未来的对象吗?非常感谢任何澄清,谢谢。
我对何时需要 API 感到有点困惑。我最近创建了一个移动应用程序,使用 flutter 和 cloud firestore 作为数据库,我只需在需要时查询并写入数据库即可。现在我正在学习全栈 Web 开发,最近观看了一个教程,其中他为数据库中的一个简单项目构建了一个具有 GET、POST 和 DELETE 功能的 Express API。
来自我直接访问数据库的背景,我不确定为什么在这种情况下 API 是必要的,这样我就不必每次都重写查询吗?这是一个非常简单的项目,因此他绝对不会制作第 3 方 API 供其他开发人员使用。我是否误解了 API 的确切用途?
这真的很简单,MongoDB 数据库中有一个集合,他使用 postman 读写数据库来检查它是否有效。
我正在构建的应用程序有评论和帖子,我想知道如何在类似于 Instagram 的评论和帖子中实施标记?我认为最后一次检查没有任何包裹。我会像在评论和帖子标记中一样实现它吗?但后来我不能为此使用搜索委托,因为它会将我带到另一个屏幕,即搜索屏幕,我希望它类似于 Facebook 和 Instagram 的搜索。有任何想法吗?
我正在使用http.get获取用户的fb个人资料图片,但图片非常小且模糊,我怎样才能获得更好的图片?目前这是我获取图像并存储它的代码:
final token = result.accessToken.token;
final graphResponse = await http.get('https://graph.facebook.com/v3.3/me?fields=name,picture,friends,email&access_token=${token}');
final profile = JSON.jsonDecode(graphResponse.body);
print(profile);
setState(() {
userProfile = profile;
_isLoggedIn = true;
});
Run Code Online (Sandbox Code Playgroud)
然后当我在我的数据库中设置数据时:
'photoUrl':userProfile["picture"]["data"]["url"],
Run Code Online (Sandbox Code Playgroud)
图片非常小且模糊,因为我在 url idk 中得到了 50 的宽度和高度,但是如何更改它?