본문 바로가기

javascript

[VSCode] 확장 프로그램 작성하기 단축키 작업 만들기vscode 확장에서는 코드로 직접 키 입력을 감지해서 단축키 작업을 실행하는것이 아니라, 특정한 이름으로 커맨드를 만들고 유저가 직접 커맨드와 단축키를 바인딩하는 과정을 거칩니다. 확장 프로그램의 activate 함수 아래에 아래와 같은 코드를 작성합니다. 커맨드 이름은 extension.확장프로그램이름.기능이름 과 같이 작성합니다. let disposable = vscode.commands.registerCommand('extension.foo.helloWorld', () => { // 이곳에 커맨드가 눌리면 실행될 코드를 작성합니다. }); context.subscriptions.push(disposable); 커맨드를 등록하는 코드를 작성했으면, 실제로 단축키와 연결하기 위해 v.. 더보기
[Angular2.0] ng-show 사용하기 AngularJS 2.0 으로 올라오면서 ngIf 는 그대로 유지되었지만 ngShow 는 사라진 것 같다. (아마도) 둘의 용도는 조금 달라서 ngIf 로는 ngShow 기능들을 대체할 수 없을 때가 있다. 프로퍼티 바인딩 기능을 사용해 hidden 프로퍼티에 값을 설정하는것으로 ngShow 기능과 같은것을 구현할 수 있다. Show 더보기
[Angular2.0] ng-bind-html 사용하기 import {Component} from 'angular2/core' @Component({ selector: 'my-app', template: ` ` }) export class App { constructor() { this.value = 'hello world' } } AngularJS 1.x 버전대의 ng-bind-html 기능을 2.0에서 사용하고자 할 때는, 프로퍼티 바인딩 기능을 이용해 단순히 innerHtml 프로퍼티에 값을 바인딩하는것으로 해결할 수 있다. 더보기
[Ionic2] 스크롤 가능한 이미지가 있는 카드 만들기 ionic 2.0 에서 카드와 스크롤러를 조합하면 이미지가 스크롤되는 카드를 쉽게 만들 수 있다. 이미지의 크기가 서로 다를 수 있음에 주의해야 하며, 코드에서는 ion-slide 태그에 height:auto 속성을 주어서 작은 이미지는 수직으로 중앙에 위치하도록 설정하였다. 첫번째 사진은 height:auto가 설정된 이미지 두번째는 설정하지 않았을 때 세번째는 풀사이즈 A card which contains scrollable image container. You can scroll images left or right. 더보기
[ionic] 로컬 앱 OAuth2 인증 수행하기 로컬에서 동작하는 웹앱에서도 제공되는 REST API등을 사용하기 위해 OAuth 인증(구글, 페이스북 등)을 지원해야 하는 경우가 종종 있습니다. 기본적인 OAuth에서는 로그인 단계에서 로그인 제공자가 앱 개발자쪽으로 콜백을 주는 부분이 있는데 이를 별도의 서버를 두지 않고도, 인앱 브라우저의 이벤트를 구독하여 url을 받아 파싱하는것만으로 처리할 수 있습니다. 예제는 Quizlet.com 의 OAuth를 구현하는것으로 작성하였습니다.(https://quizlet.com/api/2.0/docs/authorization-code-flow) 예제를 실행하기 위해서는 InAppBrowser 플러그인을 설치해 주세요 // 로그인 버튼을 누르면 실행되야 하는 함수 $scope.login = function (.. 더보기
[Parse] background job 사용하기 Parse SDK 에서 background job을 이용하여 일정 주기, 또는 일정 시점에 코드를 실행시킬 수 있습니다. (batch, cronjob 기능) 이 background job 기능을 사용하여 매일 24:00 시 마다 오늘의 유저 랭킹 등을 계산하는 기능을 제작하는것이 가능합니다. 또는 일정 주기마다 플레이어에게 돈을 주는 작업 (하지만 이런 작업은 백그라운드 잡이 아닌 다른 방법으로 구현하는게 좋다고 생각합니다.) 또한 수행할 수 있습니다. parse command line tool 설치하기https://github.com/ParsePlatform/parse-cli/releases/tag/release_3.0.3 먼저 서버 코드를 deploy 하기 위해 명령줄 프로그램이 필요합니다. 위 링크.. 더보기
[js] JSONP & POST http://alotaiba.github.io/FlyJSONP/ JSONP 특성상 POST 요청은 수행할 수 없다. 하지만 몇 가지 트릭을 사용하면 JSONP의 장점을 살리면서도, POST요청을 보낼 수 있는데, FlyJsonP는 그러한 트릭을 구현한 구현체중의 하나이다.FlyJsonP 내부적으로는 YQL을 사용한다. (https://developer.yahoo.com/yql/) 즉, GET요청으로 야후 서버한테 정보를 넘겨주면, 야후 서버가 대신 POST를 날려서 결과를 알려주는 구조이다. 클라이언트가 직접 요청을 날리는것이 아니기 때문에 몇가지 케이스에서는 문제가 될 수도 있는 소지가 있지만, 대부분의 경우 괜찮다고 생각한다. 다만 한가지 주의할 사항이 있다. YQL에서는 몇몇 특수문자를 허용하지 않.. 더보기