diff options
author | Jamie Kyle <me@thejameskyle.com> | 2019-05-14 02:31:32 +0300 |
---|---|---|
committer | Jamie Kyle <me@thejameskyle.com> | 2019-05-14 02:31:32 +0300 |
commit | f75e4529109640e39e527cdadda66d5e748ab1bf (patch) | |
tree | 0edacda1d2ad832e034a86d5c47c540d37c43f0d /README-ru-ru.md | |
parent | badab5b6aba05a76abeb5e87fc4c531fd1a04d68 (diff) |
add initialState
Diffstat (limited to 'README-ru-ru.md')
-rw-r--r-- | README-ru-ru.md | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/README-ru-ru.md b/README-ru-ru.md index 483df58..a8fb7a7 100644 --- a/README-ru-ru.md +++ b/README-ru-ru.md @@ -45,8 +45,8 @@ import React, { useState } from "react" import { createContainer } from "unstated-next" import { render } from "react-dom" -function useCounter() { - let [count, setCount] = useState(0) +function useCounter(initialState = 0) { + let [count, setCount] = useState(initialState) let decrement = () => setCount(count - 1) let increment = () => setCount(count + 1) return { count, decrement, increment } @@ -69,7 +69,13 @@ function App() { return ( <Counter.Provider> <CounterDisplay /> - <CounterDisplay /> + <Counter.Provider initialState={2}> + <div> + <div> + <CounterDisplay /> + </div> + </div> + </Counter.Provider> </Counter.Provider> ) } @@ -77,7 +83,6 @@ function App() { render(<App />, document.getElementById("root")) ``` - ## API ### `createContainer(useHook)` @@ -107,6 +112,23 @@ function ParentComponent() { } ``` +### `<Container.Provider initialState>` + +```js +function useCustomHook(initialState = "") { + let [value, setValue] = useState(initialState) + // ... +} + +function ParentComponent() { + return ( + <Container.Provider initialState={"value"}> + <ChildComponent /> + </Container.Provider> + ) +} +``` + ### `Container.useContainer()` ```js @@ -209,7 +231,7 @@ function App() { Это замечательно и прекрасно; чем больше людей будет писать в таком стиле, тем лучше. -Однако стоит внести еще чуть больше структуры и ясности, чтобы API предельно четко выражал ваши намерения. +Однако стоит внести еще чуть больше структуры и ясности, чтобы API предельно четко выражал ваши намерения. Для этого мы добавили функцию `createContainer()`, чтобы можно было рассматривать ваши кастомные хуки как "контейнеры", чтобы наш четкий и ясный API просто невозможно было использовать неправильно. @@ -499,7 +521,7 @@ Unstated Next и есть этот самый API. Вместо того, что Поделитесь своими впечатлениями о переходе на `unstated-next`, потому что в течение нескольких следующих месяцев я планирую на базе этой информации сделать две вещи: - Убедиться, что `unstated-next` удовлетворяет все нужды пользователей `unstated`. -- Удостовериться, что для `unstated` есть четкий и ясный процесс миграции на `unstated-next`. +- Удостовериться, что для `unstated` есть четкий и ясный процесс миграции на `unstated-next`. Возможно, я добавлю какие-то API в старую или новую библиотеку, чтобы упростить жизнь разработчикам. Что касается `unstated-next`, я обещаю, что добавленные API будут минимальными, насколько это возможно, и я приложу все усилия, чтобы библиотека осталась маленькой. |