跳到主要內容

undefined_extension_operator

運算子 “{0}” 未針對擴充套件 “{1}” 定義。

描述

#

當對特定擴充套件呼叫運算子而該擴充套件未實現該運算子時,分析器會生成此診斷。

示例

#

以下程式碼會生成此診斷,因為擴充套件 E 未定義運算子 *

dart
var x = E('') * 4;

extension E on String {}

常見修復方法

#

如果預期擴充套件實現該運算子,則向擴充套件新增運算子的實現。

dart
var x = E('') * 4;

extension E on String {
  int operator *(int multiplier) => length * multiplier;
}

如果該運算子由不同的擴充套件定義,則將副檔名稱更改為定義該運算子的副檔名稱。

如果該運算子定義在擴充套件覆蓋的引數上,則移除擴充套件覆蓋。

dart
var x = '' * 4;

extension E on String {}