image
Akan.js
English
Docs (V1)
image
Akan.js
You are viewing the Akan.js v1 docs.Go to the latest v2 docs
Docs (V1)
MIT 라이선스 하에 배포되었습니다.
Akan.js 공식 컨설팅 서비스Akansoft
Copyright © 2026 Akan.js 모든 권리 보유.
시스템 관리자bassman
소개
• 시작하기
• 작동원리
• 실습하기
튜토리얼
• 상세하게 보여주기
• 상태 변경하기
• 서비스 내에서 상호작용
• 슬라이스로 표시하기
• 페이지를 통한 UX
• 스칼라 사용하기
• 인사이트 사용하기
• 데이터 연결하기
시스템 아키텍처
• 개요
• 백엔드 시스템
• 프론트엔드 시스템
• 환경변수
• 기본 스칼라 타입
• 도메인 기반 모듈
• CSS
모듈 규칙
• 개요
• model.constant.ts
• model.dictionary.ts
• model.document.ts
• model.service.ts
• model.signal.ts
• model.store.ts
• Model.Template.tsx
• Model.Unit.tsx
• Model.Util.tsx
• Model.View.tsx
• Model.Zone.tsx
스칼라 규칙
• 개요
• scalar.constant.ts
• scalar.dictionary.ts
• scalar.document.ts
소개
• 시작하기
• 작동원리
• 실습하기
튜토리얼
• 상세하게 보여주기
• 상태 변경하기
• 서비스 내에서 상호작용
• 슬라이스로 표시하기
• 페이지를 통한 UX
• 스칼라 사용하기
• 인사이트 사용하기
• 데이터 연결하기
시스템 아키텍처
• 개요
• 백엔드 시스템
• 프론트엔드 시스템
• 환경변수
• 기본 스칼라 타입
• 도메인 기반 모듈
• CSS
모듈 규칙
• 개요
• model.constant.ts
• model.dictionary.ts
• model.document.ts
• model.service.ts
• model.signal.ts
• model.store.ts
• Model.Template.tsx
• Model.Unit.tsx
• Model.Util.tsx
• Model.View.tsx
• Model.Zone.tsx
스칼라 규칙
• 개요
• scalar.constant.ts
• scalar.dictionary.ts
• scalar.document.ts
Next
시작하기

스칼라 타입

스칼라 타입은 GraphQL과 MongoDB 스키마에서 사용되는 기본 데이터 타입입니다. Akan.js는 GraphQL 스칼라에 매핑되는 미리 정의된 스칼라 타입 세트를 제공하며, 타입 안전한 모델 정의를 위해 프레임워크 전반에서 사용됩니다.
Supported Scalar Types
📦@akanjs/base에서 import
import { ID, Int, Float, Upload, JSON } from "@akanjs/base";

스칼라 타입 레퍼런스 테이블

모든 스칼라 타입의 GraphQL 매핑, MongoDB 타입, 기본값, 사용 예시를 포함한 전체 레퍼런스입니다.
타입GraphQLMongoDB기본값예시 값
StringStringString"""Hello World"
BooleanBooleanBooleanfalsetrue
DateDate (custom)Datedayjs(new Date(-1))"2024-01-15T09:30:00Z"
IDIDObjectIdnull"1234567890abcdef12345678"
IntIntNumber042
FloatFloatNumber03.14159
UploadUpload (GraphQL Upload)--FileUpload stream
JSONJSON (custom)Mixed{}{ "key": "value" }
MapJSONMap{}{ "a": 1, "b": 2 }
파란색 타입(String, Boolean, Date)은 JavaScript 내장 타입입니다. 보라색 타입(ID, Int, Float, Upload, JSON)은 import가 필요한 Akan.js 커스텀 클래스입니다.

constant.ts 스칼라

스칼라 타입은 constant.ts 파일에서 모델 필드 타입을 정의하는 데 사용됩니다. 각 스칼라 타입이 사용되는 실제 예시입니다:
String - 텍스트 데이터
String Usage
Boolean - 참/거짓
Boolean Usage
Date - 날짜와 시간
Date Usage
Int & Float - 숫자
Int & Float Usage
ID - MongoDB ObjectId
ID Usage
JSON - 임의 데이터
JSON Usage

전체 모델 예제

모델 정의에서 다양한 스칼라 타입이 함께 사용되는 전체 예제입니다:
article.constant.ts
💡사용된 스칼라 타입
  • String: title, slug
  • Boolean: isPublic, isFeatured
  • Int: viewCount, likeCount, commentCount
  • Float: rating
  • Date: publishedAt, lastEditedAt
  • ID: authorId, tagIds
  • JSON: content, seoMeta

스칼라 모범 사례

1️⃣개수와 수량에는 Int 사용
개수, 수량, ID와 같은 정수에는 Float 대신 Int를 사용하세요. 더 나은 성능을 제공하고 부동소수점 문제를 방지합니다.
2️⃣Date 기본값에는 dayjs() 사용
Date 기본값에는 항상 함수를 사용하세요: { default: () => dayjs() }. 정적 기본값은 생성 시간이 아닌 빌드 시간을 캡처합니다.
3️⃣문서 참조에는 ID 사용
다른 MongoDB 문서에 대한 참조를 저장해야 할 때 ID 타입을 사용하세요. 데이터베이스에서 자동으로 ObjectId로 변환됩니다.
4️⃣유연한 콘텐츠에는 JSON 사용
리치 텍스트 콘텐츠(TipTap 에디터), 유연한 메타데이터, 설정 객체에는 JSON 타입을 사용하세요. 구조화된 데이터에는 사용을 피하고 대신 적절한 필드를 정의하세요.
🎉 학습한 내용:
  • ✓ 9가지 스칼라 타입: String, Boolean, Date, ID, Int, Float, Upload, JSON, Map
  • ✓ @akanjs/base의 커스텀 스칼라 클래스 (ID, Int, Float, Upload, JSON)
  • ✓ 각 스칼라의 GraphQL과 MongoDB 타입 매핑
  • ✓ constant.ts 모델 정의에서의 실용적인 사용 패턴
스칼라 타입
스칼라 타입 레퍼런스 테이블
constant.ts 스칼라
전체 모델 예제
스칼라 모범 사례