This repository has been archived by the owner on Jan 1, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[docs/korean] Translate official document to Korean (#18)
* Create installation_kr.md and translated installation_kr to Korean * Seperate korean translation folder (docs/docs_kr) * Translate introduction/gettsing-started.mdx to Korean * Fix miss typo at docs/krgetting-started.mdx * Fix missing [] at getting-started.mdx -> CRA * Translate docs_kr/basic_tutorial/intro.md to Korean * Translate docs_kr/basic_tutorial/atoms.mdx * Remove english line at atoms.mdx * Remove english line at atoms.mdx * Fix miss typo at atoms.mdx * Fix miss typo at installation.d & gettig-started.mdx * Translate docs_kr/basic_tutorial/selectors.md * Fix miss typo at basic-tutorial/performance.md line 60 * Translate performace.md to Korean * Translate core-concepts to Korean * Fix core-concepts * Apply lately document from docs to docs_kr * Fix miss typo at docs_kr - performance section * [docs/kr] Translate introduction/motivation.md * Add installation ESLint docs korean verstion * Translate installation code block comment to Korean * Apply recent changes at selectors.md * Apply recent changes at installation.md * Translate api-reference/core/RecoilRoot.md * Translate sub title at RecoilRoot * Translate api-reference/core/atom * Translate api-reference/core/selector * Translate api-reference/core/isRecoilValue * Sync upstream docs to docs_kr * Sync installation.md * Sync atomFamily.md * Sync atom, guides and translate additional atom.md * Sync asynchronous-data-queries, testing, core-concepts * Fix typo in intro & performance * Init docusaurus i18n config * Fix locale kr -> ko * Translated: Snapshot.md is now translated into Korean * Translated: useGotoRecoilSnapshot.md is now translated into Korean * Translated: Lodable.md is now translated into Korean * Translated: useRecoilCallback.md is now translated into Korean * Translated: useRecoilSnapshot.md is now translated into Korean * Translated: useRecoilState.md is now translated into Korean * Translated: useRecoilStateLoadable.md is now translated into Korean * Translated: useRecoilTransactionObserver.md is now translated into Korean * Translated: useRecoilValue.md is now translated into Korean * Translated: useRecoilValueLoadable.md is now translated into Korean * Translated: useResetRecoilState.md is now translated into Korean * Translated: useSetRecoilState.md is now translated into Korean * Translated: asynchronous-data-queries.md is now translated into Korean * Translated: atom-effects.md is now translated into Korean * Translated: dev-tools.md is now translated into Korean * Translated: testing.md is now translated into Korean * Sync docs * Add useGetRecoilValueInfo.md to ko/api-reference/core * Translated: noWait.md is now translated into korean * Translated: waitForAny.md is now translated into korean * Translated: waitForAll.md is now translated into korean * Translated: waitForNone.md is now translated into korean * Translated: errorSelector.md is now translated into korean * Translated: constSelector.md is now translated into korean * Translated: selectorFamily.md is now translated into korean * Translated: useRecoilBridgeAcrossReactRoots.md is now translated into korean * Translated: atomFamily.md is now translated into korean * Add code.json korean translation * Add footer.json korean translation * Add navbar korean translation, fix core concepts title * Add remaining Korean translation data * Update docs/i18n/ko/code.json Co-authored-by: Asher Hwang <dev@hsh.kr> * Fix typo (시그니쳐 -> 시그니처) * Init index, resources page translation follow #377(ee54104) * index.js, resources 페이지 관련 번역 추가 Co-authored-by: Sungwoo Park <codest99@gmail.com> Co-authored-by: Mark Yoo <yjinhyuk@gmail.com> Co-authored-by: jung-han <hanjung@nhnent.com> Co-authored-by: Asher Hwang <dev@hsh.kr>
- Loading branch information
1 parent
bf08b76
commit a673d50
Showing
56 changed files
with
3,574 additions
and
29 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,233 @@ | ||
{ | ||
"homePage.head.tagline": { | ||
"message": "React를 위한 상태관리 라이브러리" | ||
}, | ||
"homePage.head.start": { | ||
"message": "시작하기" | ||
}, | ||
"homePage.minimal.title": { | ||
"message": "작고 반응적인" | ||
}, | ||
"homePage.minimal.text": { | ||
"message": "Recoil은 React처럼 작동하고 생각합니다. 앱에 추가하고 빠르고 유연한 공유 상태를 얻으세요." | ||
}, | ||
"homePage.flow.title": { | ||
"message": "데이터 흐름 그래프" | ||
}, | ||
"homePage.flow.text": { | ||
"message": "파생 데이터와 비동기 쿼리는 순수 함수와 효율적인 구독으로 길들집니다." | ||
}, | ||
"homePage.cross.title": { | ||
"message": "교차하는 앱 관찰" | ||
}, | ||
"homePage.cross.text": { | ||
"message": "코드 분할을 손상시키지 않고 앱 전체의 모든 상태 변경을 관찰하여 지속성, 라우팅, 시간 이동 디버깅 또는 실행 취소를 구현합니다." | ||
}, | ||
"resourcePage.head.title": { | ||
"message": "외부 자원" | ||
}, | ||
"resourcePage.learn.title": { | ||
"message": "Recoil 배우기" | ||
}, | ||
"resourcePage.learn.course": { | ||
"message": "은 설정에서 고급 사용까지 안내하는 무료 Recoil 비디오 강의를 만들었습니다. 이 과정에서는 Recoil의 강력한 API를 최대한 활용하는 방법을 배우게됩니다." | ||
}, | ||
"resourcePage.learn.more": { | ||
"message": "Suspense로 데이터 가져 오기를 수행하는 방법, Recoil을 사용하여 일반적인 React 성능 병목 현상을 해결하는 방법 등을 알아보십시오." | ||
}, | ||
"resourcePage.learn.watch": { | ||
"message": "강의 보기" | ||
}, | ||
"theme.NotFound.title": { | ||
"message": "페이지를 찾을 수 없습니다.", | ||
"description": "The title of the 404 page" | ||
}, | ||
"theme.NotFound.p1": { | ||
"message": "원하는 페이지를 찾을 수 없습니다.", | ||
"description": "The first paragraph of the 404 page" | ||
}, | ||
"theme.NotFound.p2": { | ||
"message": "사이트 관리자에게 링크가 유효하지 않음을 알려주세요.", | ||
"description": "The 2nd paragraph of the 404 page" | ||
}, | ||
"theme.AnnouncementBar.closeButtonAriaLabel": { | ||
"message": "닫기", | ||
"description": "The ARIA label for close button of announcement bar" | ||
}, | ||
"theme.blog.paginator.navAriaLabel": { | ||
"message": "블로그 게시물 목록 탐색", | ||
"description": "The ARIA label for the blog pagination" | ||
}, | ||
"theme.blog.paginator.newerEntries": { | ||
"message": "이전 페이지", | ||
"description": "The label used to navigate to the newer blog posts page (previous page)" | ||
}, | ||
"theme.blog.paginator.olderEntries": { | ||
"message": "다음 페이지", | ||
"description": "The label used to navigate to the older blog posts page (next page)" | ||
}, | ||
"theme.blog.post.readingTime.plurals": { | ||
"message": "약 {readingTime}분", | ||
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" | ||
}, | ||
"theme.tags.tagsListLabel": { | ||
"message": "태그:", | ||
"description": "The label alongside a tag list" | ||
}, | ||
"theme.blog.post.readMore": { | ||
"message": "자세히 보기", | ||
"description": "The label used in blog post item excerpts to link to full blog posts" | ||
}, | ||
"theme.blog.post.paginator.navAriaLabel": { | ||
"message": "블로그 게시물 탐색", | ||
"description": "The ARIA label for the blog posts pagination" | ||
}, | ||
"theme.blog.post.paginator.newerPost": { | ||
"message": "이전 게시물", | ||
"description": "The blog post button label to navigate to the newer/previous post" | ||
}, | ||
"theme.blog.post.paginator.olderPost": { | ||
"message": "다음 게시물", | ||
"description": "The blog post button label to navigate to the older/next post" | ||
}, | ||
"theme.tags.tagsPageTitle": { | ||
"message": "태그", | ||
"description": "The title of the tag list page" | ||
}, | ||
"theme.blog.post.plurals": { | ||
"message": "{count}개 게시물", | ||
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" | ||
}, | ||
"theme.blog.tagTitle": { | ||
"message": "\"{tagName}\" 태그로 연결된 {nPosts}개의 게시물이 있습니다.", | ||
"description": "The title of the page for a blog tag" | ||
}, | ||
"theme.tags.tagsPageLink": { | ||
"message": "모든 태그 보기", | ||
"description": "The label of the link targeting the tag list page" | ||
}, | ||
"theme.CodeBlock.copyButtonAriaLabel": { | ||
"message": "클립보드에 코드 복사", | ||
"description": "The ARIA label for copy code blocks button" | ||
}, | ||
"theme.CodeBlock.copied": { | ||
"message": "복사했습니다", | ||
"description": "The copied button label on code blocks" | ||
}, | ||
"theme.CodeBlock.copy": { | ||
"message": "복사", | ||
"description": "The copy button label on code blocks" | ||
}, | ||
"theme.docs.sidebar.expandButtonTitle": { | ||
"message": "사이드바 열기", | ||
"description": "The ARIA label and title attribute for expand button of doc sidebar" | ||
}, | ||
"theme.docs.sidebar.expandButtonAriaLabel": { | ||
"message": "사이드바 열기", | ||
"description": "The ARIA label and title attribute for expand button of doc sidebar" | ||
}, | ||
"theme.docs.paginator.navAriaLabel": { | ||
"message": "문서 탐색", | ||
"description": "The ARIA label for the docs pagination" | ||
}, | ||
"theme.docs.paginator.previous": { | ||
"message": "이전", | ||
"description": "The label used to navigate to the previous doc" | ||
}, | ||
"theme.docs.paginator.next": { | ||
"message": "다음", | ||
"description": "The label used to navigate to the next doc" | ||
}, | ||
"theme.docs.sidebar.responsiveCloseButtonLabel": { | ||
"message": "메뉴 닫기", | ||
"description": "The ARIA label for close button of mobile doc sidebar" | ||
}, | ||
"theme.docs.sidebar.responsiveOpenButtonLabel": { | ||
"message": "메뉴 열기", | ||
"description": "The ARIA label for open button of mobile doc sidebar" | ||
}, | ||
"theme.docs.sidebar.collapseButtonTitle": { | ||
"message": "사이드바 숨기기", | ||
"description": "The title attribute for collapse button of doc sidebar" | ||
}, | ||
"theme.docs.sidebar.collapseButtonAriaLabel": { | ||
"message": "사이드바 숨기기", | ||
"description": "The title attribute for collapse button of doc sidebar" | ||
}, | ||
"theme.docs.versions.unreleasedVersionLabel": { | ||
"message": "{siteTitle} {versionLabel} 문서는 아직 정식 공개되지 않았습니다.", | ||
"description": "The label used to tell the user that he's browsing an unreleased doc version" | ||
}, | ||
"theme.docs.versions.unmaintainedVersionLabel": { | ||
"message": "{siteTitle} {versionLabel} 문서는 업데이트되지 않습니다.", | ||
"description": "The label used to tell the user that he's browsing an unmaintained doc version" | ||
}, | ||
"theme.docs.versions.latestVersionSuggestionLabel": { | ||
"message": "최신 문서는 {latestVersionLink} ({versionLabel})을 확인하세요.", | ||
"description": "The label userd to tell the user that he's browsing an unmaintained doc version" | ||
}, | ||
"theme.docs.versions.latestVersionLinkLabel": { | ||
"message": "최신 버전", | ||
"description": "The label used for the latest version suggestion link label" | ||
}, | ||
"theme.common.editThisPage": { | ||
"message": "페이지 편집", | ||
"description": "The link label to edit the current page" | ||
}, | ||
"theme.common.headingLinkTitle": { | ||
"message": "제목으로 바로 가기", | ||
"description": "Title for link to heading" | ||
}, | ||
"theme.lastUpdated.atDate": { | ||
"message": " {date}에", | ||
"description": "The words used to describe on which date a page has been last updated" | ||
}, | ||
"theme.lastUpdated.byUser": { | ||
"message": " {user}가", | ||
"description": "The words used to describe by who the page has been last updated" | ||
}, | ||
"theme.lastUpdated.lastUpdatedAtBy": { | ||
"message": "{atDate}{byUser} 마지막으로 업데이트했습니다.", | ||
"description": "The sentence used to display when a page has been last updated, and by who" | ||
}, | ||
"theme.common.skipToMainContent": { | ||
"message": "본문으로 건너뛰기", | ||
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation" | ||
}, | ||
"theme.SearchPage.documentsFound.plurals": { | ||
"message": "{count}개 문서를 찾았습니다.", | ||
"description": "Pluralized label for \"{count} documents found\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)" | ||
}, | ||
"theme.SearchPage.existingResultsTitle": { | ||
"message": "\"{query}\"개 검색 결과가 있습니다.", | ||
"description": "The search page title for non-empty query" | ||
}, | ||
"theme.SearchPage.emptyResultsTitle": { | ||
"message": "문서를 검색합니다.", | ||
"description": "The search page title for empty query" | ||
}, | ||
"theme.SearchPage.inputPlaceholder": { | ||
"message": "여기에 검색할 키워드를 입력하세요.", | ||
"description": "The placeholder for search page input" | ||
}, | ||
"theme.SearchPage.inputLabel": { | ||
"message": "검색", | ||
"description": "The ARIA label for search page input" | ||
}, | ||
"theme.SearchPage.algoliaLabel": { | ||
"message": "Search by Algolia", | ||
"description": "The ARIA label for Algolia mention" | ||
}, | ||
"theme.SearchPage.noResultsText": { | ||
"message": "검색 결과가 없습니다.", | ||
"description": "The paragraph for empty search result" | ||
}, | ||
"theme.SearchPage.fetchingNewResults": { | ||
"message": "새로운 검색 결과를 얻을 수 있습니다...", | ||
"description": "The paragraph for fetching new search results" | ||
}, | ||
"theme.SearchBar.label": { | ||
"message": "검색", | ||
"description": "The ARIA label and placeholder for search button" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
{ | ||
"version.label": { | ||
"message": "버전", | ||
"description": "The label for version current" | ||
}, | ||
"sidebar.docs.category.Introduction": { | ||
"message": "소개", | ||
"description": "The label for category Introduction in sidebar docs" | ||
}, | ||
"sidebar.docs.category.Basic Tutorial": { | ||
"message": "기본 자습서", | ||
"description": "The label for category Basic Tutorial in sidebar docs" | ||
}, | ||
"sidebar.docs.category.Guides": { | ||
"message": "가이드", | ||
"description": "The label for category Guides in sidebar docs" | ||
}, | ||
"sidebar.docs.category.API Reference": { | ||
"message": "레퍼런스 API", | ||
"description": "The label for category API Reference in sidebar docs" | ||
}, | ||
"sidebar.docs.category.Core": { | ||
"message": "주요 개념", | ||
"description": "The label for category Core in sidebar docs" | ||
}, | ||
"sidebar.docs.category.State": { | ||
"message": "상태", | ||
"description": "The label for category State in sidebar docs" | ||
}, | ||
"sidebar.docs.category.Snapshots": { | ||
"message": "스냅샷", | ||
"description": "The label for category Snapshots in sidebar docs" | ||
}, | ||
"sidebar.docs.category.Misc": { | ||
"message": "기타", | ||
"description": "The label for category Misc in sidebar docs" | ||
}, | ||
"sidebar.docs.category.Utils": { | ||
"message": "유틸", | ||
"description": "The label for category Utils in sidebar docs" | ||
} | ||
} |
34 changes: 34 additions & 0 deletions
34
docs/i18n/ko/docusaurus-plugin-content-docs/current/api-reference/core/Loadable.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
--- | ||
title: class Loadable | ||
sidebar_label: Loadable | ||
--- | ||
|
||
`Lodable` 객체는 Recoil [atom](/docs/api-reference/core/atom) 혹은 [selector](/docs/api-reference/core/selector)의 최신 상태를 대표합니다. 이 상태는 사용가능한 값을 가지고 있거나 에러 상태이거나 혹은 여전히 비동기 해결 보류 중일 수 있습니다. `Lodable` 은 다음의 인터페이스를 가집니다. | ||
|
||
- `state`: atom 혹은 selector의 최신 상태입니다. 가능한 값은 '`hasValue`', '`hasError`', 혹은 '`loading`' 입니다. | ||
- `contents`: `Lodable`에 의해서 대표되는 값입니다. 만약 상태가 `hasValue` 라면, 이는 실제 값입니다. 만약 상태가 `hasError` 라면 이는 던져진 Error 객체입니다. 그리고 만약 상태가 'loading'이라면 `toPromise()`를 사용하여 값의 `Promise`를 얻을 수 있습니다. | ||
|
||
Lodable은 최신 상태에 접근하기 위한 도우미 메서드를 가지고 있습니다. *이 API는 아직 불안정합니다:* | ||
|
||
- `getValue()` - React Suspense와 Recoil selectors의 시맨틱에 매치되는 값에 접근하기 위한 메서드. 만약 상태가 값을 가지고 있다면 값을 리턴하며, error를 가지고 있다면 해당 error를 던집니다. 만약 여전히 보류중이라면 실행을 연기하거나 보류중인 상태를 전파하기 위해 리렌더링합니다. | ||
- `toPromise()`: selector가 resolve되면 resolve될 `Promise` 를 리턴합니다. selector가 동기이거나 이미 resolve된 상태라면, 즉시 resolve 되는 `Promise` 를 리턴합니다. | ||
- `valueMaybe()` - 가능하다면 값을 리턴하며 다른 경우에는 `undefined` 를 리턴합니다. | ||
- `valueOrThrow()` - 가능하다면 값을 리턴하거나 Error를 던집니다. | ||
- `map()` - Lodable의 값을 변형하기 위한 함수를 받으며 새로운 Lodable을 변형된 값과 함께 리턴합니다. 변형 함수는 값의 매개변수를 받아 새로운 값을 리턴합니다; 던져진 에러나 suspense를 전파할 수도 있습니다. | ||
|
||
### Example | ||
|
||
```jsx | ||
function UserInfo({userID}) { | ||
const userNameLoadable = useRecoilValueLoadable(userNameQuery(userID)); | ||
switch (userNameLoadable.state) { | ||
case 'hasValue': | ||
return <div>{userNameLoadable.contents}</div>; | ||
case 'loading': | ||
return <div>Loading...</div>; | ||
case 'hasError': | ||
throw userNameLoadable.contents; | ||
} | ||
} | ||
``` | ||
|
Oops, something went wrong.