angular 14

앵귤러 프로젝트 기본 구조 및 핵심 파일 살펴보기

앵귤러 16 버전 기준으로 프로젝트 파일 구조를 알아보려고 한다. 앵귤러 버전별로 파일 구조가 다를 수 있으며, 타버전은 버전별 file-structure 문서를 참고하자. 앵귤러 프로젝트 구조 중요한 파일들 하나씩 살펴보기 angular.json 파일 이 파일은 워크스페이스에 있는 모든 프로젝트에 적용되는 Angular CLI 환경설정 파일이다. Angular CLI를 이용해서 빌드, 실행, 테스트할 때 사용하는 설정도 이 파일에서 구성한다. 이 파일에서 대표적인 중요한 키워드를 살펴보자. "sourceRoot": "src" : 프로젝트의 루트 폴더는 src 폴더인 것을 알 수 있음 "outputPath": "dist/first-app" : 프로젝트 빌드시 dist 폴더가 만들어짐 "index": "s..

Frontend/Angular 2024.03.21

앵귤러 Property has no initializer and is not definitely assigned in the constructor 오류 해결

문제 발생 앵귤러에서 클래스 안에서 속성 선언 시 아래의 오류가 발생한다. Property xxx has no initializer and is not definitely assigned in the constructor name이라는 문자열과 todos라는 배열을 선언할 때, 속성 값에 초기화 값이 없다는 뜻이다. 속성을 선언하고 난 뒤 값을 할당하거나 생성자에 초기화하지 않을 때 발생한다. 이 오류는 TypeScript의 엄격한 클래스 초기화 검사의 일부로, 모든 클래스 속성이 사용되기 전에 초기화되는지 확인한다. 해결 방법 1 속성 값을 직접 선언하여 초기화한다. name: string = ''; // 빈 문자열로 초기화 todos: { done: boolean, text: string; }[] =..

Frontend/Angular 2024.03.20

앵귤러 Can't bind to 'ngModel' since it isn't a known property of 'input' 오류 해결

문제 발생 앵귤러에서 양방향 바인딩을 하기 위해 ngModel 문법을 사용하려고 하니 아래 에러가 발생했다. Can't bind to 'ngModel' since it isn't a known property of 'input' 해결 방법 해결법은 매우 간단하다. 양방향 데이터 바인딩을 사용하기 위한 ngModel은 앵귤러 모듈에서 FormsModule 패키지를 import 해야 가져다 쓸 수 있다. 따라서 app.module.ts 파일에서 FormsModule 관련 정보를 추가한다. import { FormsModule } from '@angular/forms'; ... @NgModule({ imports: [ FormsModule ], }) 즉, 아래처럼 두 줄을 추가하면 에러는 사라진다. 앵귤러를 ..

Frontend/Angular 2024.03.19

앵귤러 프로젝트 생성 및 개발환경 설정하기

대표적인 프론트엔드 3대장은 리액트, 뷰, 앵귤러가 있다. 이 중 앵귤러 프로젝트에 투입 예정이라서 앵귤러에 대해 간단하게 공부해보려고 한다. (사실 앵귤러가 아니라 리액트를 하고 싶었던 건 안비밀🙉) SPA 앵귤러를 알기 위해서는 SPA(단일 페이지 웹 애플리케이션)의 개념이 중요하다. SPA는 서버에 요청할 때마다 전체 리소스를 로드하는 것이 아닌, Ajax 요청을 통해 필요한 부분만 렌더링하는 것이다. 앵귤러는 SPA 개발을 위한 자바스크립트 프레임워크이며 점차 브라우저에서 재사용 가능한 단위인 컴포넌트 기반으로 웹 애플리케이션 개발이 가능하게 된다. SPA 및 컴포넌트를 활용하는 대표적인 것이 바로 앵귤러인 셈이다. 앵귤러(Angular) 앵귤러(Angular)는 구글에서 만든 SPA 프레임워크이..

Frontend/Angular 2024.03.13