跳到主要內容

avoid_web_libraries_in_flutter

不要在 Flutter Web 外掛之外使用僅限 Web 的庫。

描述

#

當一個非 Web 外掛包中的庫匯入了僅限 Web 的庫時,分析器會生成此診斷資訊

  • dart:html
  • dart:js
  • dart:js_util
  • dart:js_interop
  • dart:js_interop_unsafe
  • package:js
  • package:web

示例

#

如果在非 Web 外掛包中發現以下程式碼,分析器會生成此診斷資訊,因為它匯入了 dart:html

dart
import 'dart:html';

import 'package:flutter/material.dart';

class C {}

常見修復

#

如果該包不打算用作 Web 外掛,則移除匯入。

dart
import 'package:flutter/material.dart';

class C {}

如果該包打算用作 Web 外掛,則將以下行新增到該包的 pubspec.yaml 檔案中

yaml
flutter:
  plugin:
    platforms:
      web:
        pluginClass: HelloPlugin
        fileName: hello_web.dart

有關更多資訊,請參閱開發包和外掛