The project for handling the 'Back button pressed' event.
This project has been created by Vessel CLI. For a simple and quick reference about it, click here.
프로젝트 개발에 사용되는 모듈들에 대해 집합적인 형태로 제공되는 패키지.
해당 라이브러리를 사용 할 프로젝트에서는 아래와 같이 의존성 모듈로 설치한다.
$ npm install --save freezeback
or
$ yarn add freezeback
본 패키지에는 아래와 같은 모듈들을 포함한다. 제공되는 모듈과 메소드 사용법 등은 코드 스니핏을 참고한다.
Freezeback 모듈은 다음과 같은 메소드들을 제공한다.
이벤트 초기화를 실행한다. 애플리케이션 로딩 초기에 한 번 만 실행한다.
function initialize(option?: Option): void {}
이벤트 해제를 실행한다. 애플리케이션 종료시 실행한다.
needsUnfreeze
값은 "뒤로가기"를 모두 시도 후 종료한다 (default: true)
function destroy(needsUnfreeze: boolean | undefined = true): void {}
"뒤로가기"가 작동하지 않도록 잠근다.
key
는 중첩된 잠금 사용시 각각을 구분하기 위한 값으로, 어떤 문자열이 와도 상관없다.
뒤로가기가 눌려지거나 window.history.back()
등이 호출되면
파라미터로 주어진 onBack
콜백 함수가 실행되며, 뒤로가기 잠금이 해제된다.
function freeze(key: string, onBack?: OnBackCallback): void {}
"뒤로가기"를 잠궜을 때 강제로 잠금해제 시킨다.
function unfreeze(key: string): void {}
"뒤로가기"가 잠겨있는지 여부를 확인한다.
key
function isFrozen(key?: string): boolean {}
해당 라이브러리의 개발환경과 빌드/배포 진행 등을 위한 설정으로 아래와 같이 전역 CLI 모듈을 설치한다.
$ npm install -g @mornya/vessel @lintest/cli sonarqube-scanner
or
$ yarn global add @mornya/vessel @lintest/cli sonarqube-scanner
package.json
에 정의된 script 항목에 대한 내용은 아래와 같다.
빌드 디렉토리 삭제.
$ npm run clean
컴파일러를 통해 소스코드를 빌드 후 난독화 하여
dist
디렉토리에 출력한다.
$ npm run build
컴파일러의 watch 모드로 소스코드 변경을 감시하여 컴파일 한다.
$ npm run watch
타입스크립트 코드 검증을 위해 컴파일러를 실행한다.
lint-stage
등에서 필요시 사용한다.
$ npm run check
Lintest CLI를 실행하여 코드 린트 실행.
$ npm run lint
Lintest CLI를 실행하여 코드 린트 실행 및 자동 교정한다.
$ npm run lint:fix
Lintest CLI를 실행하여 테스트를 수행한다.
$ npm run test
Lintest CLI를 실행하여 watch mode로 테스트를 수행한다.
$ npm run test:watch
Lintest CLI를 실행하여 테스트 커버리지 데이터를 수집하여
/coverage
디렉토리에 출력한다.
$ npm run test:coverage
NPM 레지스트리로의 퍼블리시를 위한 로그인 처리.
npm login
에 scope를 선언하여 처리하는 방식과 같다.
레지스트리 경로는package.json
의 publishConfig 항목 값이 참조 된다.
$ npm run login (not "npm login")
퍼블리시 수행 전 로그인 / 빌드 / 버전체크 등을 먼저 실행 후 정상완료시 퍼블리시가 수행 된다.
$ npm publish
소나큐브를 이용한 정적 분석이 필요하면 sonarqube-scanner
를 글로벌 설치 후 아래 명령을 실행하면 된다. 지표 확인은 sonar-project.properties
파일 내 정의 된 URL 및 projectKey를 참조한다.
$ npm run sonar
프로젝트 변경사항은 CHANGELOG.md 파일 참조.
프로젝트 라이센스는 LICENSE 파일 참조.