目次

avoid_as

asの使用を避けてください。

このルールは、最新のDartリリースで削除されました。

詳細

#

注:このルールはDart 3のSDKから削除されました。もう機能しません。そのアドバイスはコンパイラ固有のものであり、Null安全ではほとんど時代遅れです。

避けてくださいasの使用を。

型が正しいことがわかっている場合は、アサーションを使用するか、より狭い型の変数に代入します(これにより、リリースモードでの型チェックが回避されます。asはリリースモードでもコンパイルされません)。型が正しいかどうか不明な場合は、isを使用して確認します(これにより、asによって発生する例外が回避されます)。

悪い例

dart
(pm as Person).firstName = 'Seth';

良い例

dart
if (pm is Person)
  pm.firstName = 'Seth';

しかし、決して

悪い例

dart
try {
   (pm as Person).firstName = 'Seth';
} on CastError { }

dynamicの場合は、キャストにパフォーマンスへの影響がないため、例外が設けられていることに注意してください。

OK

dart
HasScrollDirection scrollable = renderObject as dynamic;

使用方法

#

avoid_asルールを有効にするには、analysis_options.yamlファイルのlinter > rulesセクションにavoid_asを追加します。analysis_options.yaml

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_as