跳到主要內容

avoid_returning_this

穩定

避免從方法中傳回 this,僅為了啟用流暢介面。

詳細資訊

#

出自 Effective Dart

避免 從方法中傳回 this,僅為了啟用流暢介面。

從方法中傳回 this 是多餘的;Dart 具有串聯運算子,可讓方法鏈普遍使用。

允許傳回 this 的情況:

  • 運算子
  • 傳回類型與目前類別不同的方法
  • 在父類別/ Mixins 或介面中定義的方法
  • 在擴充功能中定義的方法

不良範例

dart
var buffer = StringBuffer()
  .write('one')
  .write('two')
  .write('three');

良好範例

dart
var buffer = StringBuffer()
  ..write('one')
  ..write('two')
  ..write('three');

啟用

#

若要啟用 avoid_returning_this 規則,請在您的 analysis_options.yaml 檔案中的 linter > rules 下新增 avoid_returning_this

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_returning_this

如果您改為使用 YAML 地圖語法來配置 linter 規則,請在 linter > rules 下新增 avoid_returning_this: true

analysis_options.yaml
yaml
linter:
  rules:
    avoid_returning_this: true