avoid_web_libraries_in_flutter

avoid_web_libraries_in_flutter

Flutter 모바일에서 웹 전용 라이브러리를 쓰면 런타임에 문제가 생길 수 있어요. avoid_web_libraries_in_flutter 린트 규칙이 어떤 상황을 막아주는지 살펴볼게요.

출처: avoid_web_libraries_in_flutter

본문

상태: 안정(stable) · Flutter 관련 · 출시: Dart 2.6

웹 전용 라이브러리(dart:html, dart:js, dart:js_util)를 Flutter 웹 플러그인 패키지가 아닌 곳에서 사용하지 마세요. 이 라이브러리들은 웹 컨텍스트 밖에서는 지원되지 않아요. 이들에 의존하는 기능은 Flutter 모바일에서 런타임에 실패하며, Flutter 웹에서도 사용이 일반적으로 권장되지 않아요.

웹 라이브러리 접근은 다음 경우에만 허용돼요.

  • 웹을 지원 컨텍스트로 선언한 플러그인 패키지

그 외에는 dart:html, dart:js, dart:js_util의 import가 허용되지 않아요.

규칙 활성화하기

analysis_options.yaml 파일의 linter > rules 아래에 avoid_web_libraries_in_flutter을 추가하면 돼요.

linter:
  rules:
    - avoid_web_libraries_in_flutter

룰을 YAML 맵 문법으로 설정하고 있다면 linter > rules 아래에 avoid_web_libraries_in_flutter: true를 넣어 주세요.

linter:
  rules:
    avoid_web_libraries_in_flutter: true

더 알아보기