【问题标题】:Is there a way to shorten Riverpod dependency injection calls in Flutter?有没有办法缩短 Flutter 中的 Riverpod 依赖注入调用?
【发布时间】:2021-10-03 19:34:09
【问题描述】:

我在 Flutter 项目中使用 Riverpod 进行依赖注入。这是一个很棒的包,但是……这些函数调用变得越来越长,而且我的项目越复杂,越难以阅读。特别是在我有一些依赖于这些调用的复杂逻辑的情况下。

什么是缩短这些长函数/属性调用的好方法?

理想情况下,将它一直返回到原始函数调用。

复杂性示例:

if (saleKey != null) {
    await context.read(localServices).editSale(sale: updatedSale()!, saleKey: saleKey, userID: localID);
    await uuidBox.add(syncEvent.syncUUID);
    await context.read(masterSyncEventServices).addSyncEvent(syncEvent, localID);
} else {
    await context.read(localServices).addSale(updatedSale()!, localID);
    await uuidBox.add(syncEvent.syncUUID);
    await context.read(masterSyncEventServices).addSyncEvent(syncEvent, localID);
}

如何缩短这些调用?

context.read(masterSyncEventServices).addSyncEvent(syncEvent, localID);

【问题讨论】:

    标签: flutter dependency-injection riverpod


    【解决方案1】:
    final myProvider = context.read(masterSyncEventServices);
    myProvider.addSyncEvent(syncEvent, localID);
    

    【讨论】:

      猜你喜欢
      • 2023-01-22
      • 2017-07-31
      • 2016-04-21
      • 2021-04-27
      • 2021-04-01
      • 2021-03-27
      • 2017-12-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多