Tarjima qoshish uchun havola boyicha o'tib Pull Request oching (havolaga o'tish).
Standart til uchun tarkibni ko'rsatadi.
React Context.Provider
component, which takes any Scope in its value
prop and makes all hooks in the subtree work with this scope:
useUnit($store)
(and etc.) will read the state and subscribe to updates of the$store
in this scopeuseUnit(event)
(and etc.) will bind provided event or effect to this scope
Usage
Example Usage
Here is an example of <Provider />
usage.
import { createEvent, createStore, fork } from "effector";
import { useUnit, Provider } from "effector-react";
import { render } from "react-dom";
const buttonClicked = createEvent();
const $count = createStore(0);
$count.on(buttonClicked, (counter) => counter + 1);
const App = () => {
const [count, handleClick] = useUnit([$count, buttonClicked]);
return (
<>
<p>Count: {count}</p>
<button onClick={() => handleClick()}>increment</button>
</>
);
};
const myScope = fork({
values: [[$count, 42]],
});
render(
<Provider value={myScope}>
<App />
</Provider>,
document.getElementById("root"),
);
The <App />
component is placed in the subtree of <Provider value={myScope} />
, so its useUnit([$count, inc])
call will return
- State of the
$count
store in themyScope
- Version of
buttonClicked
event, which is bound to themyScope
, which, if called, updates the$count
state in themyScope
Multiple Providers Usage
There can be as many <Provider />
instances in the tree, as you may need.
import { fork } from "effector";
import { Provider } from "effector-react";
import { App } from "@/app";
const scopeA = fork();
const scopeB = fork();
const ParallelWidgets = () => (
<>
<Provider value={scopeA}>
<App />
</Provider>
<Provider value={scopeB}>
<App />
</Provider>
</>
);
Provider Properties
value
Scope
: any Scope. All hooks in the subtree will work with this scope.
Ingliz tilidagi hujjatlar eng dolzarb hisoblanadi, chunki u effector guruhi tomonidan yozilgan va yangilanadi. Hujjatlarni boshqa tillarga tarjima qilish jamiyat tomonidan kuch va istaklar mavjud bo'lganda amalga oshiriladi.
Esda tutingki, tarjima qilingan maqolalar yangilanmasligi mumkin, shuning uchun eng aniq va dolzarb ma'lumot uchun hujjatlarning asl inglizcha versiyasidan foydalanishni tavsiya etamiz.