avoid_as
避免使用 as
。
此規則已於最新的 Dart 版本中移除。
詳細資訊
#注意:此規則已在 Dart 3 中從 SDK 移除;它不再起作用。其建議是編譯器特定的,並且在空值安全的情況下大多已過時。
避免使用 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
的情況下會做出例外,因為類型轉換不會影響效能。
可以
dart
HasScrollDirection scrollable = renderObject as dynamic;
用法
#要啟用 avoid_as
規則,請在您的 analysis_options.yaml
檔案中的 linter > rules 下新增 avoid_as
analysis_options.yaml
yaml
linter:
rules:
- avoid_as
除非另有說明,否則本網站上的文件反映的是 Dart 3.6.0。頁面上次更新於 2024-07-03。 檢視原始碼 或 回報問題。