簡體   English   中英

如何在 Dart/Flutter 中泛化可選參數

[英]How to generic a optional parameter in Dart/Flutter

當我嘗試制作一些接口並需要使用泛型實現它們時遇到問題。 我的問題是我怎樣才能使用無類型

Kotlin 中什么都沒有

Java中的無效

例子:

我有一個基類

abstract class Base<Out, In> {
  Future<Out> perform(In);
}

我使用的正常情況下,它完美

class Download implements Base<bool, String> {

  @override
  Future<bool> perform(downloadUrl) async {
    // do download and return result here
  }
}

在某些情況下,我不需要包含任何參數。 但它需要 2 個泛型類型,所以我必須包含 void 作為輸入

class DoSomething implements Base<bool, void> {

  @override
  Future<bool> perform(_) async {
    // do some thing here, no use the input parameter
  }
}

問題是當在 DoSomething 類中調用執行函數時,它將 void 視為函數類型不喜歡 Java,它需要輸入參數而不是什么都沒有

DoSomething().perform((){});

我不想在執行函數中包含任何參數。 請給我任何建議,解決此案的解決方案。

您可以使用

function({dynamic optional_parameter})

它是一個可選參數,如果您不想處理/使用它,您可以簡單地忽略它,它將為空。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM