본문 바로가기

DART

[DART] flutter_dotenv Package

https://pub.dev/packages/flutter_dotenv

 

flutter_dotenv | Flutter Package

Easily configure any flutter application with global variables using a `.env` file.

pub.dev

 

 

앱 전체에서 사용할 수 있는 .env 파일에 세팅을 하고,
런타임 시 세팅을 불러오는 패키지이다.

 

 

설치

$ flutter pub add flutter_dotenv
명령어를 입력하면 프로젝트의 pubspec.yaml 파일에 다음과 같은 줄이 추가된다. (암시적으로 flutter pub get 실행)

 

dependencies:
  flutter_dotenv: ^5.0.2
작성일 22-08-26 의 최신 버전.

 

import 'package:flutter_dotenv/flutter_dotenv.dart';

 

사용법

1. 프로젝트의 root 폴더에 .env 파일을 만든다.

 

2. 세팅이나 필요한 내용들을 작성한다.

# 오른쪽을 비워두면 불러왔을때 ''(공란)이 된다.
EMPTY =
FOO = foo
BAR = bar
FOOBAR = $FOO$BAR
ESCAPED_DOLLAR_SIGN = '$1000'
# 코멘트, 주석

 

3. pubspec.yaml 파일에 .env 파일을 추가한다.

flutter:
  . . .
  # To add assets to your application, add an assets section, like this:
  # 애플리케이션에 자산을 추가하려면 다음과 같이 자산 섹션을 추가하십시오.
  assets:
    - .env

 

4. .env 파일이 버전 제어에 포함되기를 원하지 않는다면 반드시 gitignore에 추가해야 한다.

*.env

 

5. 필요한 파일에서 .env 파일을 불러온다.

 

v5.0.0 이상

import 'package:flutter_dotenv/flutter_dotenv.dart';

Future main() async {
  await dotenv.load(fileName: ".env");
}

 

이후 .env의 변수에 접근할 수 있다.

import 'package:flutter_dotenv/flutter_dotenv.dart';
dotenv.env['VAR_NAME'];

 

v5.0.0 이전

import 'package:flutter_dotenv/flutter_dotenv.dart' as DotEnv;

Future main() async {
  await DotEnv.load(fileName: ".env");
  //...runapp
}
import 'package:flutter_dotenv/flutter_dotenv.dart';
env['VAR_NAME'];

 

 

고급 사용법

ESCAPED_DOLLAR_SIGN = '$1000'
값을 작은 따옴표로 묶어 참조를 피할 수 있다.

 

await DotEnv.load(mergeWith: { "FOO": "foo", "BAR": "bar"});
로드 시 Map을 환경에 병합할 수 있다.

 

FOOBAR = $FOO$BAR
.env 파일 내에서 병합된 변수도 참조할 수 있다.

'DART' 카테고리의 다른 글

[DART] Dart 3.0 신규 문법  (0) 2023.06.21
[DART] connectivity_plus Package  (0) 2022.08.30
[DART] 기본 문법 익히기  (0) 2022.08.21