Reactã®å®éšçæ©èœ`experimental_Scope`ã®ç®çãå©ç¹ãæœåšçãªäœ¿çšäŸããããŠè€éãªReactã¢ããªã±ãŒã·ã§ã³ã§ã³ã³ããŒãã³ãã®åé¢ã匷åããããã©ãŒãã³ã¹ãåäžãããæ¹æ³ãæ¢ããŸããã°ããŒãã«ãªäŸãå«ãŸããŸãã
Reactã®å®éšç`experimental_Scope`: ææ°ã®Webéçºã«ãããã³ã³ããŒãã³ãã¹ã³ãŒãã®è§£æ
ãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ãæ§ç¯ããããã®JavaScriptã©ã€ãã©ãªã§ããReactã¯ãçŸä»£ã®Webéçºã®èŠæ±ãæºããããã«çµ¶ããé²åããŠããŸããçŸåšæ³šç®ãããŠããå®éšçãªæ©èœã®1ã€ã`experimental_Scope`ã§ãããã®ããã°æçš¿ã§ã¯ã`experimental_Scope`ã®ç®çãå©ç¹ãæœåšçãªäœ¿çšäŸããããŠè€éãªReactã¢ããªã±ãŒã·ã§ã³ã«ãããã³ã³ããŒãã³ãã®åé¢ãšããã©ãŒãã³ã¹ãã©ã®ããã«é©æ°ã§ããããæ¢ããŸãããã®è€éããã°ããŒãã«ãªèŠç¹ãšå®è·µçãªäŸã亀ããŠæ€èšŒãããããžã§ã¯ããžã®åœ±é¿ãçè§£ããã®ã«åœ¹ç«ãŠãŸãã
`experimental_Scope`ãšã¯äœãïŒ
æ¬è³ªçã«ã`experimental_Scope`ã¯ãéçºè ãã³ã³ããŒãã³ãããªãŒå ã®ç¹å®ã®æäœãç¶æ å€åã®ã¹ã³ãŒããå®çŸ©ããå¶åŸ¡ã§ããããã«ããReactå ã®ã¡ã«ããºã ã§ããæŽæ°ãã¢ããªã±ãŒã·ã§ã³å šäœã«ããã£ãŠã«ã¹ã±ãŒãããããšãå€ãåŸæ¥ã®Reactãšã¯ç°ãªãã`experimental_Scope`ã¯ãããã现ãã屿çãªã¢ãããŒããå¯èœã«ããŸããããã¯ãç¹ã«å€§èŠæš¡ã§è€éãªReactã¢ããªã±ãŒã·ã§ã³ã«ãããŠãããã©ãŒãã³ã¹ã®åäžãšããäºæž¬å¯èœãªéçºäœéšã«ã€ãªãããŸãã
ããã¯ããã倧ããªReactã¢ããªã±ãŒã·ã§ã³å ã«ããã¢ããªã±ãŒã·ã§ã³ãäœæããæ¹æ³ãšèããŠãã ãããåã¹ã³ãŒãã¯ãèªèº«ã®ç¶æ ããšãã§ã¯ããã¬ã³ããªã³ã°ãç¬ç«ããŠç®¡çã§ããã¢ããªã±ãŒã·ã§ã³ã®ä»ã®éšåãžã®å€æŽã®åœ±é¿ãæå°éã«æããŸããããã¯ãReactã³ã³ããŒãã³ãã®äžéšãç¹å®ã®ã¹ã³ãŒãã§ã©ããã§ããæ°ããAPIãéããŠå®çŸãããããã«ã€ããŠã¯åŸã§è©³ãã説æããŸãã
ãªã`experimental_Scope`ã䜿çšããã®ãïŒå©ç¹ãšã¡ãªãã
`experimental_Scope`ã®å°å ¥ã¯ãéçºè ãè€éãªReactã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããã³ä¿å®ããéã«çŽé¢ããããã€ãã®èª²é¡ã«å¯ŸåŠããŸããäž»ãªå©ç¹ã以äžã«ç€ºããŸãã
- ããã©ãŒãã³ã¹ã®åäž: åã¬ã³ããªã³ã°ã®ã¹ã³ãŒããå¶éããããšã§ã`experimental_Scope`ã¯ãç¹ã«èšç®ã³ã¹ãã®é«ãã³ã³ããŒãã³ããé »ç¹ãªç¶æ æŽæ°ãæ±ãå Žåã«ãããã©ãŒãã³ã¹ãå€§å¹ ã«åäžãããããšãã§ããŸããè€æ°ã®ç¬ç«ãããŠã£ãžã§ãããæã€è€éãªããã·ã¥ããŒããæ³åããŠã¿ãŠãã ããã`experimental_Scope`ã䜿çšãããšã1ã€ã®ãŠã£ãžã§ããã®æŽæ°ãå¿ ãããããã·ã¥ããŒãå šäœã®åã¬ã³ããªã³ã°ãåŒãèµ·ããããã§ã¯ãããŸããã
- ã³ã³ããŒãã³ãåé¢ã®æ¹å: `experimental_Scope`ã¯ãããè¯ãã³ã³ããŒãã³ãåé¢ãä¿é²ããŸããã¹ã³ãŒãå ã®å€æŽãã¹ã³ãŒãå€ã®ã³ã³ããŒãã³ãã«åœ±é¿ãäžããå¯èœæ§ãäœããªããããã³ãŒãã®æšè«ãšåé¡ã®ãããã°ã容æã«ãªããŸããããã¯ãè€æ°ã®éçºè ãã¢ããªã±ãŒã·ã§ã³ã®ç°ãªãéšåã§äœæ¥ããå€§èŠæš¡ãªããŒã ã§ç¹ã«åœ¹ç«ã¡ãŸãã
- ç¶æ 管çã®ç°¡çŽ å: å®çŸ©ãããã¹ã³ãŒãå ã§ç¶æ ã管çã§ããããã`experimental_Scope`ã¯ãç¹ã«ç¬èªã®æç¢ºãªç¶æ èŠä»¶ãæã€ã¢ããªã±ãŒã·ã§ã³ã®æ©èœãã»ã¯ã·ã§ã³ã®ç¶æ 管çãç°¡çŽ åã§ããŸãã
- ã³ãŒãã®è€éãã®è»œæž: å€ãã®å Žåã`experimental_Scope`ã¯ãè€éãªã³ã³ããŒãã³ããããå°ããããã管çããããåäœã«åå²ããããšã§ãããã¯ãªãŒã³ã§ä¿å®æ§ã®é«ãã³ãŒãã«ã€ãªãããŸããããã¯ãé »ç¹ãªæŽæ°ãšå€æŽãå¿ èŠãšããã¢ããªã±ãŒã·ã§ã³ã«ãšã£ãŠç¹ã«æçã§ãã
- æé©åãããã¬ã³ããªã³ã°: åã¬ã³ããªã³ã°ãå¶åŸ¡ããæ©èœã¯ãæé©åã®æ©äŒãæäŸããŸããã¢ããªã±ãŒã·ã§ã³ã®ã»ã¯ã·ã§ã³ããã€ãã©ã®ãããã®é »åºŠã§ã¬ã³ããªã³ã°ãããããæŠç¥çã«æ±ºå®ã§ãããããããé«éã§å¿çæ§ã®é«ããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ãå®çŸããŸãã
`experimental_Scope`ã®ä»çµã¿: äž»èŠãªæŠå¿µãšAPI
å®é𿮵éã§ã¯ç¹å®ã®APIã¯é²åããå¯èœæ§ããããŸãããåºæ¬çãªæŠå¿µã¯ãã³ã³ããŒãã³ãããªãŒå ã§ã¹ã³ãŒããå®çŸ©ã§ããæ°ããã³ã³ããŒãã³ããŸãã¯ããã¯ãäžå¿ã«å±éããŸããããã€ãã®ä»®èª¬çãªäŸãèŠãŠã¿ãŸããããæ£ç¢ºãªæ§æã¯å€æŽãããå¯èœæ§ãããããšãèŠããŠãããŠãã ããã
仮説çãª`useScope`ããã¯:
1ã€ã®å¯èœãªå®è£ ãšããŠã`useScope`ããã¯ãèããããŸãããã®ããã¯ã¯ãã³ã³ããŒãã³ãããªãŒã®ã»ã¯ã·ã§ã³ãã©ããããå®çŸ©ãããã¹ã³ãŒããäœæããŸããã¹ã³ãŒãå ã§ã¯ãç¶æ ã®å€åãšãšãã§ã¯ããããŒã«ã©ã€ãºãããŸãããã®äŸãèããŠã¿ãŸãããã
import React, { useState, useScope } from 'react';
function MyComponent() {
const [count, setCount] = useState(0);
return (
<div>
<button onClick={() => setCount(count + 1)}>Increment</button>
<p>Count: {count}</p>
<Scope>
<OtherComponent /> //Component within the Scope
</Scope>
</div>
);
}
ãã®ä»®èª¬çãªäŸã§ã¯ã`count`ã®å€æŽã`<OtherComponent />`ã®åã¬ã³ããªã³ã°ãå¿ ãããããªã¬ãŒãããšã¯éããŸããããã ãã`<OtherComponent />`ã`count`ãŸãã¯ããããæŽŸçããå€ã«çŽæ¥äŸåããŠããå Žåã¯é€ããŸããããã¯`<OtherComponent />`ã®å éšããžãã¯ãšãã®ã¡ã¢åã«äŸåããŸãã`Scope`ã³ã³ããŒãã³ãã¯ãå¿ èŠã«å¿ããŠã®ã¿åã¬ã³ããªã³ã°ã§ããããã«ãç¬èªã®ã¬ã³ããªã³ã°ããžãã¯ãå éšçã«ç®¡çã§ããŸãã
仮説çãª`Scope`ã³ã³ããŒãã³ã:
ãããã¯ãã¹ã³ãŒãæ©èœã¯å°çšã®`Scope`ã³ã³ããŒãã³ããä»ããŠå®è£ ããããšãã§ããŸãããã®ã³ã³ããŒãã³ãã¯ãã³ã³ããŒãã³ãããªãŒã®äžéšãã«ãã»ã«åããããŒã«ã©ã€ãºãããæŽæ°ã®ããã®ã³ã³ããã¹ããæäŸããŸãã以äžã«äŸã瀺ããŸãã
import React, { useState } from 'react';
function MyComponent() {
const [globalCount, setGlobalCount] = useState(0);
return (
<div>
<button onClick={() => setGlobalCount(globalCount + 1)}>Global Increment</button>
<p>Global Count: {globalCount}</p>
<Scope>
<ScopedCounter globalCount={globalCount} /> // Component using the scope
</Scope>
</div>
);
}
function ScopedCounter({ globalCount }) {
const [localCount, setLocalCount] = useState(0);
return (
<div>
<button onClick={() => setLocalCount(localCount + 1)}>Local Increment</button>
<p>Local Count: {localCount} (Global Count: {globalCount})</p>
</div>
);
}
ãã®ã·ããªãªã§ã¯ã`ScopedCounter`å ã®`localCount`ãžã®å€æŽã¯ã`ScopedCounter`ã`globalCount`ããããã䜿çšããŠããã«ããããããããã®ã¹ã³ãŒãå ã§ã®ã¿åã¬ã³ããªã³ã°ãããªã¬ãŒããŸããReactã®èª¿æŽã¢ã«ãŽãªãºã ã¯ã`Scope`ã³ã³ããŒãã³ãã®å®è£ ã«åºã¥ããŠ`globalCount`ã倿ŽãããŠããªãããšãååã«è³¢ã倿ããŸãã
éèŠäºé : APIãšå®è£ ã®å ·äœçãªè©³çްã¯ã`experimental_Scope`æ©èœã®é²åã«äŒŽã倿Žãããå¯èœæ§ããããŸããåžžã«ææ°ã®æ å ±ã«ã€ããŠã¯ãReactå ¬åŒããã¥ã¡ã³ããåç §ããŠãã ããã
䜿çšäºäŸãšå®è·µäŸ: `experimental_Scope`ãçŸå®ã®ãã®ã«ãã
`experimental_Scope`ã¯ãããŸããŸãªçŸå®äžçã®ã·ããªãªã§èŒããæŸã¡ãŸããã°ããŒãã«ãªé¢é£æ§ãæã€ããã€ãã®å®è·µçãªäœ¿çšäºäŸãèŠãŠã¿ãŸãããã
- è€éãªããã·ã¥ããŒã: ãã³ãã³ããã¥ãŒãšãŒã¯ãæ±äº¬ã®æè³äŒç€Ÿã䜿çšããéèããã·ã¥ããŒããæ³åããŠã¿ãŠãã ãããããã·ã¥ããŒãã«ã¯ãæ ªäŸ¡ãåžå Žãã¬ã³ããããŒããã©ãªãªããã©ãŒãã³ã¹ãªã©ãè€æ°ã®ãŠã£ãžã§ããã衚瀺ãããŸãã`experimental_Scope`ã䜿çšãããšãåãŠã£ãžã§ãããç¬ç«ããã¹ã³ãŒããšããŠæ±ãããšãã§ããŸããæ ªäŸ¡ãŠã£ãžã§ãããžã®æŽæ°ïŒäŸ: ãªã¢ã«ã¿ã€ã ããŒã¿ãã£ãŒãã«åºã¥ãïŒã¯ãå¿ ãããããã·ã¥ããŒãå šäœã®åã¬ã³ããªã³ã°ãåŒãèµ·ããããã§ã¯ãããŸãããããã«ãããç°ãªãå°ççå Žæãã¿ã€ã ãŸãŒã³ãè¶ãããªã¢ã«ã¿ã€ã ã®ããŒã¿æŽæ°ããã£ãŠããã¹ã ãŒãºã§å¿çæ§ã®é«ããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãä¿èšŒãããŸãã
- Eã³ããŒã¹ãã©ãããã©ãŒã : ã€ã³ãããã©ãžã«ããã€ããªã©ãç°ãªãåœã®é¡§å®¢ã«ãµãŒãã¹ãæäŸããã°ããŒãã«ãªå€§èŠæš¡Eã³ããŒã¹ãã©ãããã©ãŒã ãèããŠã¿ãŸããããåã ã®ååãªã¹ãããŒãžã¯ã`experimental_Scope`ã®æ©æµãåããããšãã§ããŸãããŠãŒã¶ãŒãååãã«ãŒãã«è¿œå ããå Žåãã«ãŒãã³ã³ããŒãã³ãã®ã¿ãæŽæ°ãããååãªã¹ãå šäœã¯æŽæ°ãããŸãããããã«ãããç¹ã«å€æ°ã®ååç»åãè€éãªã€ã³ã¿ã©ã¯ãã£ãèŠçŽ ãããããŒãžã§ã®ããã©ãŒãã³ã¹ãåäžããŸãã
- ã€ã³ã¿ã©ã¯ãã£ããªããŒã¿èŠèŠå: CERNãããã¯ã¹ã»ãã©ã³ã¯åäŒãªã©ãäžçäžã®ç ç©¶æ©é¢ã®ç§åŠè ã䜿çšããããŒã¿èŠèŠåããŒã«ã¯ãè€éãªãã£ãŒããã°ã©ããå«ãããšããããããŸãã`experimental_Scope`ã¯ãåºç€ãšãªãããŒã¿ã倿Žããããšãã«ç¹å®ã®ãã£ãŒãã®åã¬ã³ããªã³ã°ãåé¢ããããã©ãŒãã³ã¹ãšå¿çæ§ãåäžãããããšãã§ããŸããç°ãªãå°åã®æ°è±¡ãã¿ãŒã³ã«é¢ããã©ã€ãããŒã¿ã¹ããªãŒã ãèããŠã¿ãŠãã ããã
- å€§èŠæš¡ãªãã©ãŒã : åœéçãªãã¶ç³è«ãä¿éºéè«æ±åŠçã«äœ¿çšããããããªãåºç¯å²ã®ãã©ãŒã ãå«ãã¢ããªã±ãŒã·ã§ã³ã§ã¯ãã¹ã³ãŒãã䜿çšããŠåã ã®ãã©ãŒã ã»ã¯ã·ã§ã³ã®ããã©ãŒãã³ã¹ãæé©åã§ããŸãããŠãŒã¶ãŒããã©ãŒã ã®1ã€ã®ã»ã¯ã·ã§ã³ã倿Žããå Žåããã®ã»ã¯ã·ã§ã³ã®ã¿ãåã¬ã³ããªã³ã°ããããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãå¹çåãããŸãã
- ãªã¢ã«ã¿ã€ã ã³ã©ãã¬ãŒã·ã§ã³ããŒã«: ã·ãããŒã®ããŒã ãšãµã³ãã©ã³ã·ã¹ã³ã®ããŒã ã®ããã«ãç°ãªãåœã®ããŒã ã䜿çšããå ±åææžç·šéããŒã«ãèããŠã¿ãŠãã ããã`experimental_Scope`ã¯ãåãŠãŒã¶ãŒã®å€æŽã«é¢é£ããæŽæ°ãåé¢ããããã«äœ¿çšã§ããåã¬ã³ããªã³ã°ã®æ°ãæžãããç·šéãšã¯ã¹ããªãšã³ã¹ã®å¿çæ§ãåäžãããŸãã
`experimental_Scope`äœ¿çšæã®ãã¹ããã©ã¯ãã£ã¹ãšèæ ®äºé
`experimental_Scope`ã¯å€§ããªå©ç¹ãæäŸããŸããããã®æå¹æ§ãæå€§åããæœåšçãªèœãšã穎ãé¿ããããã«ãã¹ããã©ã¯ãã£ã¹ã«åŸãããšãäžå¯æ¬ ã§ãã
- åã¬ã³ããªã³ã°ã®ããã«ããã¯ãç¹å®ãã: `experimental_Scope`ãé©çšããåã«ãã¢ããªã±ãŒã·ã§ã³ããããã¡ã€ãªã³ã°ããŠãäžå¿ èŠã«åã¬ã³ããªã³ã°ããŠããã³ã³ããŒãã³ããç¹å®ããŸããReact DevToolsããã®ä»ã®ããã©ãŒãã³ã¹ãããã¡ã€ãªã³ã°ããŒã«ã䜿çšããŠãæé©åã®é åãç¹å®ããŸãã
- æŠç¥çãªã¹ã³ãŒãèšå®: ã©ã®ã³ã³ããŒãã³ããã¹ã³ãŒãã«ããããæ éã«æ€èšããŸããé床ãªã¹ã³ãŒãèšå®ã¯ãäžå¿ èŠãªè€éãã«ã€ãªããå¯èœæ§ãããããé¿ããŠãã ãããããã©ãŒãã³ã¹ãéèŠãŸãã¯ç¬ç«ããç¶æ èŠä»¶ãæã€ã³ã³ããŒãã³ãã«çŠç¹ãåœãŠãŸãã
- ã¹ã³ãŒãéã®éä¿¡: ç°ãªãã¹ã³ãŒãå ã®ã³ã³ããŒãã³ããã©ã®ããã«éä¿¡ããããèšç»ããŸããã³ã³ããã¹ããç¶æ 管çã©ã€ãã©ãªïŒReduxãZustandãªã© â ã³ã³ããã¹ããã¹ã³ãŒããããŠããå Žåã¯ç¶æ 管çãã¹ã³ãŒãããå¿ èŠãããããšã«æ³šæïŒããŸãã¯ã«ã¹ã¿ã ã€ãã³ãã·ã¹ãã ã䜿çšããŠãã¹ã³ãŒããããã³ã³ããŒãã³ãéã®çžäºäœçšãåŠçããããšãæ€èšããŸããããã«ãããä¿å®æ§ã確ä¿ããããã«æ éãªèšç»ãå¿ èŠã«ãªããŸãã
- ãã¹ã: ã¹ã³ãŒããããã³ã³ããŒãã³ãã培åºçã«ãã¹ãããæŽæ°ãæ£ããåé¢ãããã¢ããªã±ãŒã·ã§ã³ãæåŸ ã©ããã«æ©èœããããšã確èªããŸããç°ãªãã·ããªãªãã«ããŒããããã«ããŠããããã¹ããšçµåãã¹ãã«çŠç¹ãåœãŠãŸãã
- ææ°æ å ±ãå ¥æãã: `experimental_Scope`ã¯å®éšçãªæ©èœã§ããAPIã®å€æŽããã°ä¿®æ£ããã¹ããã©ã¯ãã£ã¹ã«ã€ããŠåžžã«ææ°æ å ±ãåŸãããã«ãææ°ã®Reactããã¥ã¡ã³ããšã³ãã¥ããã£ã®è°è«ã«é ããªãããã«ããŠãã ããã
- ä»£æ¿æ¡ãæ€èšãã: `experimental_Scope`ã¯äžèœè¬ã§ã¯ãªãããšãå¿ããªãã§ãã ãããå Žåã«ãã£ãŠã¯ãã¡ã¢åïŒäŸ: `React.memo`ã®äœ¿çšïŒãã³ãŒãåå²ãä»®æ³åãªã¹ããªã©ã®ä»ã®æé©åææ³ã®æ¹ãé©åãããããŸããããã¬ãŒããªããè©äŸ¡ããããŒãºã«æé©ãªã¢ãããŒããéžæããŠãã ããã
- éå°ãªæé©åãé¿ãã: ã¢ããªã±ãŒã·ã§ã³ãæ©æã«æé©åããªãã§ãã ããããŸããã¯ãªãŒã³ã§èªã¿ãããã³ãŒããæžãããšã«éäžããŸããæ¬¡ã«ããããã¡ã€ãªã³ã°ããŒã«ã䜿çšããŠããã©ãŒãã³ã¹ã®ããã«ããã¯ãç¹å®ããæãæçãªå Žåã«`experimental_Scope`ãé©çšããŸãã
`experimental_Scope`ã«ããããã©ãŒãã³ã¹ãããã¡ã€ãªã³ã°
`experimental_Scope`ã®åœ±é¿ãçè§£ããã«ã¯ããã©ãŠã¶ã«çµã¿èŸŒãŸããéçºè ããŒã«ãŸãã¯React DevToolsã䜿çšããŸããã¹ã³ãŒããå®è£ ããåãšåŸã«ã¢ããªã±ãŒã·ã§ã³ããããã¡ã€ãªã³ã°ããŠãããã©ãŒãã³ã¹ã®åäžã枬å®ããŸããç£èŠããäž»èŠãªã¡ããªãã¯ã«ã¯ã以äžãå«ãŸããŸãã
- ã¬ã³ããªã³ã°æé: ã³ã³ããŒãã³ããåã¬ã³ããªã³ã°ã«ãããæéãæž¬å®ããŸãã`experimental_Scope`ã¯ãã¹ã³ãŒããããã³ã³ããŒãã³ãã®ã¬ã³ããªã³ã°æéãççž®ããã¯ãã§ãã
- åã¬ã³ããªã³ã°: ã³ã³ããŒãã³ããåã¬ã³ããªã³ã°ãããåæ°ã远跡ããŸãã`experimental_Scope`ã¯ãäžå¿ èŠãªåã¬ã³ããªã³ã°ã®æ°ãæžããã¯ãã§ãã
- CPU䜿çšç: CPU䜿çšçãåæããŠãã¢ããªã±ãŒã·ã§ã³ãå€ãã®åŠçèœåãè²»ãããŠããé åãç¹å®ããŸãã
- ã¡ã¢ãªäœ¿çšé: ã¡ã¢ãªäœ¿çšéãç£èŠããŠã`experimental_Scope`ãã¡ã¢ãªãªãŒã¯ãé床ã®ã¡ã¢ãªæ¶è²»ãåŒãèµ·ãããªãããšã確èªããŸãã
ç¶æ 倿ŽåŸã«çºçããã¬ã³ããªã³ã°ã®æ°ã枬å®ãã`experimental_Scope`ã®ããã©ãŒãã³ã¹ãžã®åœ±é¿ãåæããããŒã«ã䜿çšããŸãã
ã°ããŒãã«ã¢ããªã±ãŒã·ã§ã³ãšåœéçãªãŠãŒã¶ãŒãžã®èæ ®äºé
ã°ããŒãã«ãªãŠãŒã¶ãŒåãã«ã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããéã«ã¯ã次ã®èæ ®äºé ã念é ã«çœ®ããŠãã ããã
- ããŒã«ã©ã€ãº: ã¢ããªã±ãŒã·ã§ã³ãè€æ°ã®èšèªãšæåããµããŒãããŠããããšã確èªããŸããi18nã©ã€ãã©ãªã䜿çšããŠãããã¹ãã翻蚳ããæ¥ä»ãšé貚ããã©ãŒãããããç°ãªãæ°å€ã·ã¹ãã ãåŠçããŸãã
- ç°ãªããããã¯ãŒã¯ã§ã®ããã©ãŒãã³ã¹: äœéãŸãã¯ä¿¡é Œæ§ã®äœãã€ã³ã¿ãŒãããæ¥ç¶ãæã€å°åã®ãŠãŒã¶ãŒåãã«ã¢ããªã±ãŒã·ã§ã³ãæé©åããŸããã³ãŒãåå²ãé å»¶èªã¿èŸŒã¿ãç»åæé©åæè¡ã䜿çšããŠããã©ãŒãã³ã¹ãåäžãããŸãã
- ã¢ã¯ã»ã·ããªãã£: ã¢ã¯ã»ã·ããªãã£æšæºã«æºæ ããã¢ããªã±ãŒã·ã§ã³ãéããã®ãã人ã§ã䜿çšã§ããããã«ããŸããç»åã«altããã¹ããæäŸããã»ãã³ãã£ãã¯HTMLã䜿çšããã¢ããªã±ãŒã·ã§ã³ãããŒããŒãã§ã¢ã¯ã»ã¹ã§ããããšã確èªããŸãã
- ã¿ã€ã ãŸãŒã³ã®åŠç: ç¹ã«ã¢ããªã±ãŒã·ã§ã³ãç°ãªãå°åã®ã¹ã±ãžã¥ãŒãªã³ã°ãæéäŸåã®ããŒã¿ãæ±ãå Žåã¯ãã¿ã€ã ãŸãŒã³ãæ£ç¢ºã«åŠçããŸãã
- é貚ãšéèèŠå¶: éèååŒãå«ãã¢ããªã±ãŒã·ã§ã³ã®å ŽåãããŸããŸãªåœã§ã®ç°ãªãé貚ãçšèŠå¶ãæ³çèŠä»¶ã«æ³šæããŠãã ããã
- ããŒã¿ãã©ã€ãã·ãŒ: ããŒã¿ãã©ã€ãã·ãŒèŠå¶ïŒäŸ: GDPRãCCPAïŒã«æ³šæãããŠãŒã¶ãŒããŒã¿ãé©åã«ä¿è·ããŸããããã¯ãç°ãªãåœã«ãŠãŒã¶ãŒãæã€åœéçãªã¢ããªã±ãŒã·ã§ã³ã«ãšã£ãŠç¹ã«éèŠã§ãã
- æåçæåæ§: æåçãªéãã«é æ ®ããç¹å®ã®æåã§äžå¿«ãŸãã¯äžé©åãšãªãå¯èœæ§ã®ããèšèªãç»åããã¶ã€ã³ã®äœ¿çšãé¿ããŠãã ãããããã¯ããã¹ãã ãã§ãªããé è²ãã¢ã€ã³ã³ããã®ä»ã®èŠèŠèŠçŽ ã«ãé©çšãããŸãã
ãããã®èæ ®äºé ãçµã¿èŸŒãããšã§ãããã©ãŒãã³ã¹ãé«ããã°ããŒãã«ãªãŠãŒã¶ãŒã«ã¢ã¯ã»ã¹ããããã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ã§ããŸãã
`experimental_Scope`ãšReactã®æªæ¥
`experimental_Scope`æ©èœã¯ãReactã®ããã©ãŒãã³ã¹ãšéçºè ãšã¯ã¹ããªãšã³ã¹ãåäžãããããã®éèŠãªäžæ©ã衚ããŠããŸããReactãé²åãç¶ããã«ã€ããŠããã®æ©èœããŸãã¯åæ§ã®ãã®ãã©ã€ãã©ãªã®ã³ã¢éšåã«ãªãå¯èœæ§ãé«ãã§ããå°æ¥ã®éçºã«ã¯ã以äžãå«ãŸããå¯èœæ§ããããŸãã
- æŽç·ŽãããAPI: `experimental_Scope`ã®APIã¯ãéçºè ã®ãã£ãŒãããã¯ãšå®éã®äœ¿çšã«åºã¥ããŠæŽç·Žãããå¯èœæ§ãé«ãã§ãã
- DevToolsçµ±åã®æ¹å: ã³ã³ããŒãã³ãã¹ã³ãŒããšãã®ããã©ãŒãã³ã¹ç¹æ§ã«é¢ããããè¯ãæŽå¯ãæäŸããããã®React DevToolsãšã®çµ±åã®åŒ·åã
- èªåæé©åããŒã«: ããã©ãŒãã³ã¹ãåäžãããããã«ã³ã³ããŒãã³ããã¹ã³ãŒãããæ©äŒãèªåçã«ç¹å®ããææ¡ã§ããããŒã«ã
- ã³ã³ã«ã¬ã³ãã¢ãŒããšã®çµ±å: ããã©ãŒãã³ã¹ãšå¿çæ§ãããã«åäžãããããã®Reactã®ã³ã³ã«ã¬ã³ãã¢ãŒããšã®ã·ãŒã ã¬ã¹ãªçµ±åã
Reactã³ãã¥ããã£ãšå ¬åŒãªãªãŒã¹ã«é¢ããæ å ±ãåžžã«å ¥æããææ°ã®éçºã«é ããªãããã«ããŠãã ããããã®æ©èœã¯ãä»åŸæ°å¹Žéã§éçºè ãè€éãªReactã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããã³ç®¡çããæ¹æ³ã«å€§ããªåœ±é¿ãäžããå¯èœæ§ããããŸãã
çµè«: `experimental_Scope`ã®åãæŽ»çšãã
`experimental_Scope`ã¯Reactãšã³ã·ã¹ãã ãžã®ææãªè¿œå ã§ãããããã©ãŒãã³ã¹ã®æé©åãã³ã³ããŒãã³ãåé¢ã®æ¹åãç¶æ 管çã®ç°¡çŽ åã®ããã®åŒ·åãªæ©èœãæäŸããŸãããŸã å®éšçã§ã¯ãããŸããããã®æœåšçãªå©ç¹ã¯ãç¹ã«å€§èŠæš¡ã§ã°ããŒãã«ã«äœ¿çšãããReactã¢ããªã±ãŒã·ã§ã³ã«ãšã£ãŠéèŠã§ãããã®æŠå¿µãçè§£ãããã¹ããã©ã¯ãã£ã¹ã«åŸãããã®é²åã«é¢ããæ å ±ãåžžã«å ¥æããããšã§ã`experimental_Scope`ã®åãæŽ»çšããŠãããé«éã§ãããå¿çæ§ãé«ããããä¿å®ããããReactã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ã§ããŸãã
éçºè ãšããŠã`experimental_Scope`ã®ãããªæ°æ©èœãåãå ¥ããããšã¯ãçµ¶ããå€åããWebéçºã®ç¶æ³ã«å¯Ÿå¿ããããã«äžå¯æ¬ ã§ãããããã®å®éšçãªæ©èœã广çã«çµã¿èŸŒãã«ã¯ãæ éãªè©äŸ¡ããã¹ããç¶ç¶çãªåŠç¿ãéèŠã§ãã
ReactããŒã ã¯é©æ°ãç¶ããŠããã`experimental_Scope`ã¯ãWebã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããæ¹æ³ãæ¹åããããŒã«ãéçºè ã«æäŸãããšãã圌ãã®ã³ãããã¡ã³ãã®èšŒã§ãããã®æ©èœãæçãé²åããã«ã€ããŠãææ°æ å ±ãšãã¹ããã©ã¯ãã£ã¹ã«ã€ããŠã¯ãå ¬åŒã®Reactããã¥ã¡ã³ããšã³ãã¥ããã£ãªãœãŒã¹ã«æ³šç®ããŠãã ããããããã®æ°æ©èœãåãå ¥ããããšã§ãã¢ããªã±ãŒã·ã§ã³ãããã©ãŒãã³ã¹ãé«ãã ãã§ãªããã°ããŒãã«ãªWebã®çµ¶ããå€åããèŠæ±ã«ãé©å¿ã§ããããã«ãªããŸãã