독립적인 JavaScript 라이브러리
UMD 번들 - 13KB
모든 환경에서 사용 가능한 JavaScript 라이브러리
TypeScript 타입 정의 - 5KB
완벽한 TypeScript 지원과 자동완성
NPM 패키지 설정
npm publish로 NPM 레지스트리에 배포 가능
<script src="./flutter-bridge.js"></script>
<script>
const bridge = new FlutterBridge();
</script>
import FlutterBridge from './flutter-bridge.js';
const bridge = new FlutterBridge({ debug: true });
const FlutterBridge = require('./flutter-bridge.js');
const bridge = new FlutterBridge();
import FlutterBridge from './flutter-bridge';
const bridge = new FlutterBridge({ debug: true });
// 타입 지원으로 자동완성!
const bridge = new FlutterBridge({
debug: true, // 디버그 로그 출력
timeout: 10000, // 타임아웃 (밀리초)
retries: 3 // 재시도 횟수
});
// main.js 또는 App.vue
import FlutterBridge from './utils/flutter-bridge';
const bridge = new FlutterBridge({ debug: true });
// 전역으로 제공
app.provide('bridge', bridge);
// useBridge.js
import { useState } from 'react';
import FlutterBridge from './utils/flutter-bridge';
const bridge = new FlutterBridge({ debug: true });
export function useBridge() {
return bridge;
}
// bridge.service.ts
import { Injectable } from '@angular/core';
import FlutterBridge from './utils/flutter-bridge';
@Injectable({ providedIn: 'root' })
export class BridgeService {
private bridge = new FlutterBridge({ debug: true });
async getLocation() {
return await this.bridge.getLocation();
}
}
라이브러리 파일들은 lib/ 폴더에 있습니다:
lib/
├── flutter-bridge.js # UMD 번들
├── flutter-bridge.d.ts # TypeScript 타입
├── package.json # NPM 설정
├── README.md # 라이브러리 문서
└── examples/ # 예제 파일들
├── vanilla-js.html
├── vue3-cdn.html
├── react-cdn.html
├── angular-cdn.html
└── svelte-cdn.html
각 프레임워크별 완전한 예제가 제공됩니다:
전체 API 목록은 API 문서를 참고하세요.
주요 메서드:
getLocation() - GPS 위치takePhoto() - 사진 촬영showNotification() - 푸시 알림saveData() / loadData() - 스토리지getDeviceInfo() - 디바이스 정보vibrate() - 진동