Trouble Shooting 썸네일형 리스트형 Angular, error TS2339: Property 'map' does not exist on type 'Observable<Object>' Angular를 공부하던 중, 책에서 안내한데로 아래의 코드들을 구현했으나, 제목처럼 오류가 발생했다. import 'rxjs/add/operator/map';...ngOnInit() { this.postsService.getPosts() .map(res => res['items']) .subscribe((result: any) => this.posts = result)} error TS2339: Property 'map' does not exist on type 'Observable' RxJSRxJS는 자바스크립트에 기반한 Reactive Extensions 라이브러리이다. 여기서 Reactive는 ReactiveX인데, observer 패턴을 응용 이벤트기반 비동기 프로그래밍을 가능케 해주는 라이브러.. 더보기 파이썬, Django(장고) index.html등 static 파일등 설정하기 Django는 파이썬기반 웹어플리케이션 프레임웤이다. 이 글은 설정 작업중 html파일, js파일, css파일등 "static resources"라고 하는 것들을 URL에 직접 맵핑하는 방법을 설명한다. 일반적으로 'settings.py'파일에 'STATIC_URL', 'STATICFILE_DIR'등을 설정하는데, URL이 'STATIC_URL'에 정의된 경로로 제한된다. 만약 메인페이지 "/index.html"을 static 파일을 사용하려면, 약간 까다롭게 된다. 좀더 유연하고 유용한 방법으로, "urls.py"파일에 정의하는 urlpatterns 배열에 'path','url'등을 설정할 때 static resource를 설정하는 방법을 설명한다. urls.pyfrom django.conf.urls .. 더보기 안드로이드 새모듈 생성, 빌드시 오류 안드로이드 스튜디오 (버전 3.1)을 이용해서 새 모듈을 생성하고, 기존 앱 "build.gradle"파일에 새 모듈을 의존성에 추가, 빌드시 오류가 발생한다. 오류 문구로 이래와 같은 문구들이 여러개 뿌려진다."Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolve project :module" 안드로이드 개발자 사이트 문서(한글본)는 최신 내용으로 수정되지 않아서 문제 해결에 도움이 되지 않는다. 또한 안드로이드 스튜디오(버전 3.1)가 모듈을 생성할 때, 파일을 정확히 설정하지 않는 것이 문제가 발생하는 원인중 하나이다. 해결방법 : 새모듈 생성 후 의존성 추가스튜디오에서 "File > New > New Mo.. 더보기 nashorn, 외부 JSON객체 파싱 및 할당하기 자바에서 제공하는 nashorn 스크립트 엔진을 이용해서 엔진 바깥에서 JSON 문자열을 해석하고, 구해진 객체를 다시 엔진에 할당하는 코드를 구현해 본다. ScriptEngineManager engineManager = new ScriptEngineManager();ScriptEngine engine = engineManager.getEngineByName("nashorn"); // parse JSONScriptObjectMirror json = (ScriptObjectMirror)engine.eval("JSON"); String data = "{\"name\":\"ZCUBE\"}";ScriptObjectMirror parsed = (ScriptObjectMirror)json.callMember("pa.. 더보기 Android Studio 3.1, 데이터바인딩 오류 Android Studio(안드로이드 스튜디오) 버전을 3.1로 올린 후 데이터 바인딩 부분에서 오류가 발생했다. 증상처음에는 바인딩 객체가 이미 빌드 되어 있었기 때문에, 빌드 오류는 없었으나 실행시 오류가 발생했다. 오류내용은 "Didn't find class "android.arch.lifecycle.Observer" on path" 였다. 혹시나 하는 마음으로, 프로젝트를 새로이 빌드를 했더니, 아예 데이터바인딩 관련 객체가 생성되지 않았다. 처방구글, 안드로이드 개발자 사이트에서 버전업과 관련된 문서를 확인했지만, 답을 얻지 못했었는데, 그 이유는 한글판으로 보고 있었기 때문이다. 영문판 페이지에는 3.1로 버전업을 할 때, 어떻게 해야 하는지 자세히 기술되어 있다. 데이터바인딩을 사용하기 위해.. 더보기 자바스크립트, 싱글톤(Singleton) 객체 만들기 문득 자바스크립트 'class'선언을 이용할 때 싱글톤 객체를 만들어 보고 싶었다. 더 좋은 방법이 있는지 모르겠지만, 두가지 방법이 떠올라 테스트해 보았다. 첫번째 방법외부의 const로 선언한 변수를 이용하는 방법인데... 조금은 거슬리는 느낌...class TestSingletone{static get instance() { return __TestSingletoneInstance; } hello(){console.log("Hello World!");}}const __TestSingletoneInstance = new TestSingletone; 테스트/사용 코드는 아래에 있다. 동작은 잘 되는 것 같다. 다만 클래스 바깥에 코드가 있어야 되는 점이 거슬린다.TestSingletone.instanc.. 더보기 자바스크립트(ES6)에서 var, let의 차이 그리고 클래스 상수멤버 선언 자바스크립트에서 변수를 선언할 때 사용되는 예약어중 'var', 'let'의 차이를 보여주는 코드를 짜봤다. 아울러 클래스 멤버변수로 상수값을 선언하는 방법도 같이 짜봤다. var, let의 네임스페이스의 차이함수에서 선언된 변수가 함수 바깥에서 보이는지?function __declare(){var myvar = 10;let mylet = 20;} __declare();try { console.debug("accessable myvar=" + myvar); } catch(e) { console.error(e); }try { console.debug("accessable mylet=" + mylet); } catch(e) { console.error(e); } 실행결과는...test_code.html?_i.. 더보기 Proxy 설정 (apt, wget) 리눅스 서버를 설치할 때 인터넷에 직접 연결하지 않는 경우, 인터넷 proxy를 사용하곤 한다. 이 때 패키지 설치때 사용하는 apt, wget에 대한 proxy 설정 방법에 대해 ubunt 서버 16.04를 기준으로 검토된 내용을 기록한다. apt패키지 설치툴, apt설정은 /etc/apt/apt.conf.d 디렉토리에 임의의 파일을 생성하거나 기존의 파일을 수정하여 아래의 내용을 넣으면 된다.형식)Acquire::http::Proxy "http://username:password@IPorHOSTNAME:port"; 예)Acquire::http::Proxy "http://proxy.net:8088"; 리눅스 배포본에 따라 디렉토리가 아닌 apt.conf 파일이 있을 수 있는데, 해당 파일을 수정해도 된.. 더보기 안드로이드 뒤로가기 버튼(백버튼) 보이기 및 가리기 안드로이드 프로그래밍을 접하면서 어려운 점 중의 하나가, 잘못된 정보들이 생각외로 많다는 것이다. 아마도 API버전이 올라가면서 예전에는 되었던 것이 폐기되거나 더 나은 방식이 제공되거나 했기 때문이라 생각된다. 뒤로가기 버튼 혹은 백버튼 보이기 두가지 방식이 있다. 설정하는 방식과 동적으로 프로그래밍하는 것이다.설정방식 : AndroidManifest.xml android:parentActivityName" 속성에 짝지워진 부모 Activity를 설정하면 자동으로 뒤로가기 버튼이 보여진다. 동적방식 : 프로그래밍에 의한 제어protected void onCreate(Bundle savedInstanceState) { ... getSupportActionBar().setDisplayHomeAsUpEnab.. 더보기 이전 1 2 다음