簡體   English   中英

Dart `void` vs `Function` vs `void Function()`

[英]Dart `void` vs `Function` vs `void Function()`

Flutter 的InkWell小部件有一個void Function()類型的onTap參數。 如果我聲明並傳遞一個 void 方法,我會得到一個類型錯誤This expression has a type of 'void' so its value can't be used. 如果然后我使用Function代替,我還必須return null; 明確地。 我只想使用一個 void,並省略顯式的 return 語句。

有人可以解釋這些類型之間的區別嗎?

  • void
  • Function
  • void Function()

(雖然這聽起來可能與其他問題相似,但我無法找到確切的答案。)

問題是: InkWell Widget 的onTap需要一個回調void Function (一個不返回任何內容的 function),每次用戶按下按鈕時都會運行該回調。

很難確定,因為您沒有共享代碼,但我猜您可能正在運行 function 而不是在沒有括號的情況下傳遞它。 因為您正在調用或運行 function 您沒有傳遞它,而是傳遞了返回的void

嘗試在不帶括號的情況下傳遞 function,這樣它就不會運行。

暫無
暫無

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

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