メインコンテンツにスキップ

shared_deferred_prefix

遅延ロードされたインポートのプレフィックスは、他のインポートディレクティブでは使用できません。

説明

#

プレフィックスが遅延ロードされたインポートで使用され、かつ他のインポート(遅延ロードされているかどうかに関わらず)でもプレフィックスとして使用されている場合に、アナライザーはこの診断を生成します。遅延ロードされたインポートのプレフィックスは、インポートされたライブラリのロードに使用されるため、他のインポートと共有することはできません。

#

以下のコードは、プレフィックスxが遅延ロードされたインポートのプレフィックスとして使用され、さらに別のインポートでも使用されているため、この診断を生成します。

dart
import 'dart:math' deferred as x;
import 'dart:convert' as x;

var y = x.json.encode(x.min(0, 1));

一般的な修正

#

遅延ロードされたインポートに別の名前を使用できる場合は、それを使用してください。

dart
import 'dart:math' deferred as math;
import 'dart:convert' as x;

var y = x.json.encode(math.min(0, 1));

他のインポートに別の名前を使用できる場合は、それを使用してください。

dart
import 'dart:math' deferred as x;
import 'dart:convert' as convert;

var y = convert.json.encode(x.min(0, 1));