Reactć®experimental_LegacyHidden APIćę¢ććć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććē®”ēććć¢ććŖć±ć¼ć·ć§ć³ć®ććć©ć¼ćć³ć¹ćåäøćććę¹ę³ć使ēØę³ćå©ē¹ćå¶éćå®č·µēćŖä¾ć§å¦ć³ć¾ćć
Reactć®experimental_LegacyHiddenćč§£ęććļ¼éēŗč åćē·åć¬ć¤ć
ReactćÆåøøć«é²åćć¦ćććéēŗč
ä½éØćØć¢ććŖć±ć¼ć·ć§ć³ć®ććć©ć¼ćć³ć¹åäøćē®ēćØććę°ę©č½ćAPIćå°å
„ćć¦ćć¾ćććć®ćććŖå®éØēAPIć®1ć¤ćexperimental_LegacyHiddenć§ćććęę°ć®Reactć¢ććŖć±ć¼ć·ć§ć³ć§ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććē®”ēććꮵéēć«ē§»č”ććć®ćęÆę“ććććć«čØčØććć¦ćć¾ćććć®ć¬ć¤ćć§ćÆćexperimental_LegacyHiddenć®å
ę¬ēćŖę¦č¦ććć®å©ē¹ć使ēØę¹ę³ćććć³å¶éć«ć¤ćć¦čŖ¬ęćć¾ćć
experimental_LegacyHiddenćØćÆä½ćļ¼
experimental_LegacyHiddenćÆćē¹å®ć®ę”ä»¶ć«åŗć„ćć¦ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććé蔨示ć¾ććÆč”Øē¤ŗć§ććććć«ććReactć³ć³ćć¼ćć³ćć§ćäø»ć«ę°ććReactć®ććæć¼ć³ććć¼ćøć§ć³ćøć®ę®µéēćŖē§»č”äøć«ä½æēØććć¾ććäø»ćŖć¦ć¼ć¹ć±ć¼ć¹ćÆćć¦ć¼ć¶ć¼ä½éØćęćŖćććØćŖććå¤ćć¦ććć©ć¼ćć³ć¹ćä½ćåÆč½ę§ć®ććć³ć¼ććććę°ććęé©åćććå®č£
ćøćØć¹ć ć¼ćŗć«ē§»č”ććććØć§ćć
ć¬ć¬ć·ć¼ć³ć¼ćć®åÆč¦ę§ćå¶å¾”ććć²ć¼ććć¼ćć¼ćØčćć¦ćć ćććććć«ćććę°ę©č½ćꮵéēć«å±éććå¤ćę©č½ćå¾ć ć«å»ę¢ććććØćć§ććć¦ć¼ć¶ć¼ć«ćØć£ć¦ć¹ć ć¼ćŗćŖē§»č”ćäæčؼććć¾ćć
ćŖćexperimental_LegacyHiddenć使ēØććć®ćļ¼
Reactćććøć§ćÆćć§experimental_LegacyHiddenć®ä½æēØćę¤čØćć¹ććććć¤ćć®čŖ¬å¾åć®ććēē±ćććć¾ćļ¼
- ććć°ć¬ćć·ććć¤ć°ć¬ć¼ć·ć§ć³ļ¼ é¢ę°ć³ć³ćć¼ćć³ćććććÆćć³ć³ć«ć¬ć³ćć¬ć³ććŖć³ć°ćØćć£ćę°ććReactę©č½ćøć®ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ćć®ę®µéēćŖē§»č”ćäæé²ćć¾ććććć«ćććē “å£ēå¤ę“ćå°å „ćććŖć¹ćÆć軽ęøćććå復ēćŖę¹åćåÆč½ć«ćŖćć¾ćć
- ććć©ć¼ćć³ć¹ć®ęé©åļ¼ ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććÆćęę°ć®Reactć¬ć³ććŖć³ć°ććæć¼ć³ć«ęé©åććć¦ććŖćå “åćććć¾ććäøč¦ćŖćØćć«é蔨示ć«ććććØć§ćē¹ć«ååćć¼ćęććć®å¾ć®ę“ę°ęć«ćć¢ććŖć±ć¼ć·ć§ć³å Øä½ć®ććć©ć¼ćć³ć¹ćåäøćććććØćć§ćć¾ćć
- č¤éę§ć®č»½ęøļ¼ ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććåé¢ććććØć§ćć³ć¼ććć¼ć¹ćē°”ē“ åććäæå®ćØćŖćć”ćÆćæćŖć³ć°ć容ęć«ććććØćć§ćć¾ćć
- å®éØļ¼ ć¢ććŖć±ć¼ć·ć§ć³ć®ę¢åć®ę©č½ć«å½±éæćäøććććØćŖććę°ććę©č½ććć¶ć¤ć³ćå®éØććććØćć§ćć¾ćć
experimental_LegacyHiddenć³ć³ćć¼ćć³ćć使ēØćć¦ćć¬ć¬ć·ć¼å®č£ ćØę°ććå®č£ ćē°”åć«åćęæććććØćć§ćć¾ćć - ć¦ć¼ć¶ć¼ä½éØć®åäøļ¼ ć¹ć ć¼ćŗć§ę®µéēćŖē§»č”ćÆćććčÆćć¦ć¼ć¶ć¼ä½éØć«ć¤ćŖććć¾ććć¦ć¼ć¶ć¼ćÆē§»č”äøć«ćć°ćććć©ć¼ćć³ć¹ć®åé”ć«ééććåÆč½ę§ćä½ććŖćć¾ćć
experimental_LegacyHiddenć®ä½æēØę¹ę³
experimental_LegacyHiddenć®ä½æēØćÆęÆč¼ēē°”åć§ććåŗę¬ēćŖä¾ć仄äøć«ē¤ŗćć¾ćć
åŗę¬ēćŖå®č£
ć¾ććreactććexperimental_LegacyHiddenć³ć³ćć¼ćć³ććć¤ć³ćć¼ćććåæ
č¦ćććć¾ćććććÆå®éØēćŖAPIć§ćććReactć®čØå®ļ¼ä¾ļ¼webpack.config.jsć.babelrcćć”ć¤ć«ćŖć©ļ¼ć§å®éØēćŖę©č½ćęå¹ć«ććåæ
č¦ćććå “åćććććØć«ę³Øęćć¦ćć ććć
experimental_LegacyHiddenćÆåäøć®ććććunstable_hiddenćåćå
„ćć¾ćććć®ćććććÆćć¼ć«å¤ć§ćć³ć³ćć¼ćć³ćć®åč¦ē“ ćé蔨示ć«ćććć©ćććę±ŗå®ćć¾ććunstable_hiddenćtrueć®å “åćåč¦ē“ ćÆé蔨示ć«ćŖććfalseć®å “åćÆč”Øē¤ŗććć¾ćć
import React from 'react';
import { unstable_LegacyHidden as LegacyHidden } from 'react';
function MyComponent() {
const [showLegacy, setShowLegacy] = React.useState(false);
return (
);
}
function LegacyComponent() {
return ćććÆć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ćć§ćć
;
}
export default MyComponent;
ćć®ä¾ć§ćÆćLegacyComponentćÆLegacyHiddenć§ć©ććććć¦ćć¾ććunstable_hiddenćććććÆshowLegacyć¹ćć¼ćå¤ę°ć«ćć£ć¦å¶å¾”ćććććæć³ć®ćÆćŖććÆć§åćęæćććć¾ććććć«ćććć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććåēć«č”Øē¤ŗć¾ććÆé蔨示ć«ććććØćć§ćć¾ćć
ę”ä»¶ä»ćć¬ć³ććŖć³ć°
ććč¤éćŖććøććÆć使ēØćć¦ćć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ćććć¤é蔨示ć¾ććÆč”Øē¤ŗććććę±ŗå®ć§ćć¾ććććØćć°ćć¦ć¼ć¶ć¼ć®ćć©ć¦ć¶ćććć¤ć¹ćć¾ććÆę©č½ćć©ć°ć«åŗć„ćć¦é蔨示ć«ćććå “åćććć¾ćć
import React from 'react';
import { unstable_LegacyHidden as LegacyHidden } from 'react';
function MyComponent() {
const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
return (
{isMobile ? (
) : (
)}
);
}
function LegacyComponent() {
return ćććÆćć¹ćÆćććēØć®ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ćć§ćć
;
}
function NewMobileComponent() {
return ćććÆć¢ćć¤ć«ć«ęé©åćććę°ććć³ć³ćć¼ćć³ćć§ćć
;
}
export default MyComponent;
ćć®ä¾ć§ćÆćLegacyComponentćÆćć¹ćÆćććććć¤ć¹ć§ć®ćæč”Øē¤ŗććć¾ććć¢ćć¤ć«ć¦ć¼ć¶ć¼ć«ćÆä»£ććć«NewMobileComponentć蔨示ććć¾ććććć«ćććć¬ć¬ć·ć¼ć³ć¼ćććꮵéēć«ē§»č”ććŖććććć¾ćć¾ćŖććć¤ć¹ć«åćććä½éØćęä¾ć§ćć¾ćć
ę©č½ćć©ć°ćØć®ēµ±å
ę©č½ćć©ć°ćÆćę°ę©č½ć®å±éćē®”ēććć³å¶å¾”ććććć®å¼·åćŖćć¼ć«ć§ććexperimental_LegacyHiddenćØēµćæåććć¦ä½æēØććććØć§ćę°ććć³ć³ćć¼ćć³ććꮵéēć«å°å
„ććå¤ććć®ćå»ę¢ććććØćć§ćć¾ćć
ććØćć°ćuseNewSearchćØććę©č½ćć©ć°ććććØćć¾ćććć®ćć©ć°ć使ēØćć¦ćę°ććę¤ē“¢ć³ć³ćć¼ćć³ćć蔨示ććććć¬ć¬ć·ć¼ę¤ē“¢ć³ć³ćć¼ćć³ćć蔨示ććććę±ŗå®ć§ćć¾ćć
import React from 'react';
import { unstable_LegacyHidden as LegacyHidden } from 'react';
// ę©č½ćć©ć°ć®å¤ćåå¾ććé¢ę°ććććØä»®å®ćć¾ć
function useFeatureFlag(flagName) {
// ćććÆćć¬ć¼ć¹ćć«ćć¼ć§ććå®éć®ć¢ććŖć±ć¼ć·ć§ć³ć§ćÆćé©åćŖę©č½ćć©ć°ć©ć¤ćć©ćŖć
// 使ēØćć¾ćļ¼ä¾ļ¼LaunchDarklyćSplit.ioćŖć©ļ¼ć
const [flagValue, setFlagValue] = React.useState(false);
React.useEffect(() => {
// APIćlocalStorageććę©č½ćć©ć°ććć§ććććć·ćć„ć¬ć¼ć·ć§ć³
setTimeout(() => {
const value = localStorage.getItem(flagName) === 'true';
setFlagValue(value);
}, 500);
}, [flagName]);
return flagValue;
}
function MyComponent() {
const useNewSearch = useFeatureFlag('useNewSearch');
return (
{useNewSearch ? (
) : (
)}
);
}
function LegacySearchComponent() {
return ćććÆć¬ć¬ć·ć¼ę¤ē“¢ć³ć³ćć¼ćć³ćć§ćć
;
}
function NewSearchComponent() {
return ćććÆę°ććę¤ē“¢ć³ć³ćć¼ćć³ćć§ćć
;
}
export default MyComponent;
ćć®ä¾ć§ćÆćuseFeatureFlagćććÆćuseNewSearchę©č½ćć©ć°ć®å¤ćåå¾ćć¾ćććć©ć°ćęå¹ćŖå “åćNewSearchComponentć蔨示ććć¾ćććć仄å¤ć®å “åćÆćLegacyHiddenć§ć©ćććććLegacySearchComponentć蔨示ććć¾ććęåć«ćuseFeatureFlagćÆćć¼ć«ć«ć¹ćć¬ć¼ćøććē¶ę
ćčŖćæåććę©č½ćć©ć°ćµć¼ćć¹ćć·ćć„ć¬ć¼ććć¾ćć
experimental_LegacyHiddenć使ēØććå©ē¹
experimental_LegacyHiddenć使ēØććå©ē¹ćÆćē¹ć«å¤§č¦ęØ”ć§č¤éćŖć¢ććŖć±ć¼ć·ć§ć³ćę±ćå “åć«é”čć§ćļ¼
- ć³ć¼ććć¼ć¹ć®ē°”ē“ åļ¼ ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććåé¢ććććØć§ćć³ć¼ććć¼ć¹ćććē®”ēćććććēč§£ććććććććØćć§ćć¾ććććć«ćććéēŗč ć®čŖē„ēč² č·ć軽ęøćććę°ććę©č½ććć°äæ®ę£ć®å°å „ć容ęć«ćŖćć¾ćć
- ććć©ć¼ćć³ć¹ć®åäøļ¼ äøč¦ćŖćØćć«ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććé蔨示ć«ććććØć§ćć¢ććŖć±ć¼ć·ć§ć³å Øä½ć®ććć©ć¼ćć³ć¹ćåäøćććććØćć§ćć¾ćććććÆćJavaScriptć«å¤§ććä¾åććć¢ććŖć±ć¼ć·ć§ć³ć«ćØć£ć¦ē¹ć«éč¦ć§ćć
- ćŖć¹ćÆć®č»½ęøļ¼ ꮵéēćŖē§»č”ć«ćććē “å£ēå¤ę“ćå°å „ćććŖć¹ćÆć軽ęøććć¾ćććć¹ć¦ć®ć¦ć¼ć¶ć¼ć«å±éććåć«ćå¶å¾”ćććē°å¢ć§ę°ććę©č½ćć³ć³ćć¼ćć³ćććć¹ćć§ćć¾ćć
- éēŗč ä½éØć®åäøļ¼ éēŗč ćÆć¬ć¬ć·ć¼ć³ć¼ććć¼ć¹ć®č¤éćć«ę©ć¾ćććććØćŖććę°ććę©č½ć«åćēµćććØćć§ćć¾ććććć«ćććēē£ę§ćØä»äŗć®ęŗč¶³åŗ¦ćåäøćć¾ćć
- ććčÆćć¦ć¼ć¶ć¼ä½éØļ¼ ć¹ć ć¼ćŗć§ę®µéēćŖē§»č”ćÆćććčÆćć¦ć¼ć¶ć¼ä½éØć«ć¤ćŖććć¾ććć¦ć¼ć¶ć¼ćÆē§»č”äøć«ćć°ćććć©ć¼ćć³ć¹ć®åé”ć«ééććåÆč½ę§ćä½ććŖćć¾ćć
å¶éćØčę ®äŗé
experimental_LegacyHiddenćÆććć¤ćć®å©ē¹ćęä¾ćć¾ććććć®å¶éćØę½åØēćŖę¬ ē¹ć«ę³ØęććććØćéč¦ć§ćļ¼
- å®éØēAPIļ¼ å®éØēAPIć§ććććć
experimental_LegacyHiddenćÆå°ę„ć®Reactćć¼ćøć§ć³ć§å¤ę“ć¾ććÆåé¤ćććåÆč½ę§ćććć¾ćććććÆć注ęćć¦ä½æēØććåæ č¦ć«åæćć¦ć³ć¼ććę“ę°ććęŗåććć¦ććåæ č¦ćććććØćęå³ćć¾ćć - č¤éę§ćå¢ćåÆč½ę§ļ¼ ę
éć«ä½æēØććŖććØć
experimental_LegacyHiddenćÆć³ć¼ććć¼ć¹ć«č¤éććå ććåÆč½ę§ćććć¾ććć³ć³ćć¼ćć³ćć®č”Øē¤ŗć»é蔨示ć®ććøććÆćę確ć«å®ē¾©ćććēč§£ććććććØć確čŖććććØćéč¦ć§ćć - ćŖćć”ćÆćæćŖć³ć°ć®ä»£ęæć§ćÆćŖćļ¼
experimental_LegacyHiddenćÆćŖćć”ćÆćæćŖć³ć°ć®ä»£ććć«ćÆćŖćć¾ććććććÆćę°ććReactć®ććæć¼ć³ććć¼ćøć§ć³ćøć®ę®µéēćŖē§»č”ćäæé²ććććć«ä½æēØćććäøęēćŖč§£ę±ŗēć§ććęēµēć«ćÆćć¬ć¬ć·ć¼ć³ć¼ććå®å Øć«åé¤ććććØćē®ęćć¹ćć§ćć - ćŖć¼ćć¼ćććļ¼ äøč¬ēć«č»½éć§ććć
experimental_LegacyHiddenć®ä½æēØć«ćÆććććŖćŖć¼ćć¼ćććć伓ćć¾ćććć®ćŖć¼ćć¼ććććÆéåøøē”č¦ć§ćć¾ćććē¹ć«ććć©ć¼ćć³ć¹ćéč¦ćŖć¢ććŖć±ć¼ć·ć§ć³ć§ćÆčŖčćć¦ććććØćéč¦ć§ćć - ćććć°ļ¼
experimental_LegacyHiddenć®ä½æēØę¹ę³ć«ę³ØęććŖććØććććć°ćććč¤éć«ćŖćåÆč½ę§ćććć¾ćććć°ćčØé²ććććReact DevToolsć使ēØćć¦ćå®éć«ć©ć®ć³ć³ćć¼ćć³ććć¬ć³ććŖć³ć°ććć¦ćććć確čŖćć¦ćć ććć
experimental_LegacyHiddenć使ēØććććć®ćć¹ććć©ćÆćć£ć¹
experimental_LegacyHiddenć®å©ē¹ćę大åćććŖć¹ćÆćęå°éć«ęććććć«ć仄äøć®ćć¹ććć©ćÆćć£ć¹ć«å¾ć£ć¦ćć ććļ¼
- ę¦ē„ēć«ä½æēØććļ¼
experimental_LegacyHiddenćÆę¬å½ć«åæ č¦ćŖå “åć«ć®ćæä½æēØćć¦ćć ćććč¦ē“ ć®č”Øē¤ŗć»é蔨示ć®ććć®ę±ēØć³ć³ćć¼ćć³ććØćć¦ä½æēØććŖćć§ćć ććć - ć·ć³ćć«ć«äæć¤ļ¼ ć³ć³ćć¼ćć³ćć®č”Øē¤ŗć»é蔨示ć®ććøććÆćÆćć·ć³ćć«ć§ēč§£ćććććć®ć«ćć¹ćć§ććč¤éćŖę”ä»¶ććć¹ćććć
experimental_LegacyHiddenć³ć³ćć¼ćć³ććÆéæćć¦ćć ććć - ć³ć¼ććęęøåććļ¼ å
experimental_LegacyHiddenć³ć³ćć¼ćć³ćć®ē®ēćØććć®åč¦ē“ ć蔨示ć¾ććÆé蔨示ć«ććę”ä»¶ćę確ć«ęęøåćć¦ćć ććć - å¾¹åŗēć«ćć¹ćććļ¼
experimental_LegacyHiddenć³ć³ćć¼ćć³ććęå¾ ć©ććć«ę©č½ćć¦ććććØć確čŖććććć«ćć³ć¼ććå¾¹åŗēć«ćć¹ććć¦ćć ććććØććøć±ć¼ć¹ćę½åØēćŖććć©ć¼ćć³ć¹ć®åé”ć«ę³Øęćć¦ćć ććć - ććć©ć¼ćć³ć¹ćē£č¦ććļ¼
experimental_LegacyHiddenćå°å „ććå¾ćć¢ććŖć±ć¼ć·ć§ć³ć®ććć©ć¼ćć³ć¹ćē£č¦ććäŗęććŖćéåŗ¦ä½äøćå¼ćčµ·ććć¦ććŖćććØć確čŖćć¦ćć ććć - åé¤ćčØē»ććļ¼
experimental_LegacyHiddenćÆäøęēćŖč§£ę±ŗēć§ććććØćåæććŖćć§ćć ćććć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććå®å Øć«ē§»č”ććććććććåé¤ććčØē»ćē«ć¦ć¦ćć ććć
å®éć®ä½æēØä¾
ćć¾ćć¾ćŖć·ććŖćŖć§experimental_LegacyHiddenćć©ć®ććć«ä½æēØć§ććććå®éć®ä¾ćććć¤ćč¦ć¦ćæć¾ćććć
ä¾1ļ¼ćÆć©ć¹ć³ć³ćć¼ćć³ćććé¢ę°ć³ć³ćć¼ćć³ććøć®ē§»č”
ćććÆć使ēØććé¢ę°ć³ć³ćć¼ćć³ćć«ē§»č”ćććå¤ćć®ćÆć©ć¹ć³ć³ćć¼ćć³ććęć¤å¤§č¦ęØ”ćŖć³ć¼ććć¼ć¹ććććØę³åćć¦ćć ćććexperimental_LegacyHiddenć使ēØćć¦ććÆć©ć¹ć³ć³ćć¼ćć³ććå¾ć
ć«é¢ę°ć³ć³ćć¼ćć³ćć«ē½®ćęććććØćć§ćć¾ćć
import React from 'react';
import { unstable_LegacyHidden as LegacyHidden } from 'react';
// ć¬ć¬ć·ć¼ćÆć©ć¹ć³ć³ćć¼ćć³ć
class LegacyProfile extends React.Component {
constructor(props) {
super(props);
this.state = { name: 'å¤ććććć£ć¼ć«' };
}
render() {
return ććć«ć”ćÆć{this.state.name} (ćÆć©ć¹ć³ć³ćć¼ćć³ć)
;
}
}
// ćććÆć使ēØććę°ććé¢ę°ć³ć³ćć¼ćć³ć
function NewProfile() {
const [name, setName] = React.useState('ę°ćććććć£ć¼ć«');
return ććć«ć”ćÆć{name} (é¢ę°ć³ć³ćć¼ćć³ć)
;
}
function MyComponent({ useNew }) {
return (
{useNew ? (
) : (
)}
);
}
export default MyComponent;
ćć®ä¾ć§ćÆćLegacyProfilećÆćÆć©ć¹ć³ć³ćć¼ćć³ćć§ćććNewProfilećÆćććÆć使ēØććé¢ę°ć³ć³ćć¼ćć³ćć§ććMyComponentćÆexperimental_LegacyHiddenć使ēØćć¦ćuseNewććććć«åŗć„ćć¦ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ćć¾ććÆę°ććć³ć³ćć¼ćć³ććę”ä»¶ä»ćć§ć¬ć³ććŖć³ć°ćć¾ćć
ä¾2ļ¼ę°ę©č½ć®A/Bćć¹ć
experimental_LegacyHiddenćÆę°ę©č½ć®A/Bćć¹ćć«ä½æēØć§ćć¾ććäøéØć®ć¦ć¼ć¶ć¼ć«ę°ę©č½ć蔨示ććę®ćć®ć¦ć¼ć¶ć¼ć«ćÆć¬ć¬ć·ć¼ę©č½ć蔨示ćć¾ććććć«ćććę°ę©č½ćå
Øå”ć«å±éććåć«ćć¼ćæćØćć£ć¼ććććÆćåéć§ćć¾ćć
import React from 'react';
import { unstable_LegacyHidden as LegacyHidden } from 'react';
// ć¦ć¼ć¶ć¼ćA/Bćć¹ćć°ć«ć¼ćć«ćććć©ćććå¤ęććé¢ę°ććććØä»®å®ćć¾ć
function isInABTestGroup() {
// ććć«A/Bćć¹ćć®ććøććÆćå®č£
ćć¾ćļ¼ä¾ļ¼ćÆććć¼ćć¦ć¼ć¶ć¼IDć使ēØļ¼
// ćć®ä¾ć§ćÆćć©ć³ćć ćŖćć¼ć«å¤ćčæćć ćć«ćć¾ć
return Math.random() < 0.5;
}
function LegacyButton() {
return ;
}
function NewButton() {
return ;
}
function MyComponent() {
const showNewButton = isInABTestGroup();
return (
{showNewButton ? (
) : (
)}
);
}
export default MyComponent;
ćć®ä¾ć§ćÆćisInABTestGroupé¢ę°ćć¦ć¼ć¶ć¼ćA/Bćć¹ćć°ć«ć¼ćć«ćććć©ćććå¤ęćć¾ććć¦ć¼ć¶ć¼ćć°ć«ć¼ćć«ććå “åćNewButtonć蔨示ććć¾ćććć仄å¤ć®å “åćÆćLegacyHiddenć§ć©ćććććLegacyButtonć蔨示ććć¾ćć
ä¾3ļ¼ćŖćć¶ć¤ć³ć®ę®µéēå±é
ć¦ć§ććµć¤ćććŖćć¶ć¤ć³ććéćexperimental_LegacyHiddenć使ēØćć¦ććµć¤ćć®ćć¾ćć¾ćŖć»ćÆć·ć§ć³ć«ę°ćććć¶ć¤ć³ćꮵéēć«å±éć§ćć¾ććććć«ććććŖćć¶ć¤ć³ć®å½±éæćē£č¦ććåæ
č¦ć«åæćć¦čŖæę“ćč”ćććØćć§ćć¾ćć
import React from 'react';
import { unstable_LegacyHidden as LegacyHidden } from 'react';
function LegacyHeader() {
return ć¬ć¬ć·ć¼ćććć¼ ;
}
function NewHeader() {
return ę°ćććććć¼ćć¶ć¤ć³ ;
}
function MyComponent({ useNewHeader }) {
return (
{useNewHeader ? (
) : (
)}
ć”ć¤ć³ć³ć³ćć³ć
);
}
export default MyComponent;
ćć®ä¾ć§ćÆćLegacyHeaderćÆå¤ććććć¼ćć¶ć¤ć³ć蔨ććNewHeaderćÆę°ćććć¶ć¤ć³ć蔨ćć¾ććMyComponentćÆexperimental_LegacyHiddenć使ēØćć¦ćuseNewHeaderććććć«åŗć„ćć¦ć¬ć¬ć·ć¼ćććć¼ć¾ććÆę°ćććććć¼ćę”ä»¶ä»ćć§ć¬ć³ććŖć³ć°ćć¾ćć
experimental_LegacyHiddenć®ä»£ęæę”
experimental_LegacyHiddenćÆä¾æå©ć§ćććReactć§ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććē®”ēććććć«åćććØćć§ććä»ć®ć¢ććć¼ććććć¾ćć
- ę”ä»¶ä»ćć¬ć³ććŖć³ć°ļ¼ ęØęŗēćŖę”ä»¶ä»ćć¬ć³ććŖć³ć°ęč”ļ¼ä¾ļ¼
ifęćäøé ę¼ē®åļ¼ć使ēØćć¦ćē¹å®ć®ę”ä»¶ć«åŗć„ćć¦ć³ć³ćć¼ćć³ćć蔨示ć¾ććÆé蔨示ć«ććććØćć§ćć¾ćććć®ć¢ććć¼ććÆexperimental_LegacyHiddenć使ēØćććććē°”åć§ćććč¤éćŖć·ććŖćŖć§ćÆęč»ę§ććŖćå “åćććć¾ćć - ć³ć³ćć¼ćć³ćć®ć³ć³ććøć·ć§ć³ļ¼ ć³ć³ćć¼ćć³ćć®ć³ć³ććøć·ć§ć³ć使ēØćć¦ćć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććć©ććć¾ććÆē½®ćęććę°ććć³ć³ćć¼ćć³ććä½ęć§ćć¾ćććć®ć¢ććć¼ćć«ćććę¢åć®ć³ć¼ććåå©ēØććŖćććꮵéēć«ę°ććę©č½ćå°å „ć§ćć¾ćć
- ćŖćć”ćÆćæćŖć³ć°ļ¼ ęćē“ę„ēćŖć¢ććć¼ććÆćć¬ć¬ć·ć¼ć³ć¼ććåē“ć«ćŖćć”ćÆćæćŖć³ć°ćć¦ćę°ććReactć®ććæć¼ć³ććć¼ćøć§ć³ć使ēØććććØć§ćććććÆęéć®ćććććć»ć¹ććććć¾ććććć¬ć¬ć·ć¼ć³ć¼ććęé¤ććć³ć¼ććć¼ć¹å Øä½ć®åč³Ŗćåäøćććęćå¹ęēćŖę¹ę³ć§ćć
- ć³ć¼ćåå²ļ¼ ć³ć³ćć¼ćć³ćć®é蔨示ć«ē“ę„é¢é£ććććć§ćÆććć¾ććććć³ć¼ćåå²ćÆćē¹å®ć®ćć„ć¼ćę©č½ć«åæ
č¦ćŖć³ć¼ćć®ćæćčŖćæč¾¼ćććØć§ććć©ć¼ćć³ć¹ćåäøćććć®ć«å½¹ē«ć”ć¾ćććććÆćå¤ćć®ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććęć¤å¤§č¦ęØ”ćŖć¢ććŖć±ć¼ć·ć§ć³ć«ē¹ć«å½¹ē«ć”ć¾ććåēć¤ć³ćć¼ćļ¼
import()ļ¼ćÆć³ć³ćć¼ćć³ććé å»¶čŖćæč¾¼ćæć§ćććććååćć¼ćęéćę¹åććć¾ćć
ēµč«
experimental_LegacyHiddenćÆćęę°ć®Reactć¢ććŖć±ć¼ć·ć§ć³ć§ć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććē®”ēććꮵéēć«ē§»č”ććć®ć«å½¹ē«ć¤å¼·åćŖćć¼ć«ć§ććććć«ćććę°ę©č½ćꮵéēć«å±éććććć©ć¼ćć³ć¹ćåäøćććć³ć¼ććć¼ć¹ćē°”ē“ åććććØćć§ćć¾ćććć ććę¦ē„ēć«ä½æēØćććć®å¶éćčŖčććććØćéč¦ć§ććexperimental_LegacyHiddenćÆćŖćć”ćÆćæćŖć³ć°ć®ä»£ććć«ćÆćŖćććć¬ć¬ć·ć¼ć³ć³ćć¼ćć³ććå®å
Øć«ē§»č”ććććåé¤ććććØćē®ęćć¹ćć§ććććØćåæććŖćć§ćć ććć
experimental_LegacyHiddenć®å©ē¹ćå¶éććć¹ććć©ćÆćć£ć¹ćēč§£ććććØć§ćReactćććøć§ćÆćć®åč³ŖćØäæå®ę§ćåäøćććęēµēć«ćÆäøēäøć®ć¦ć¼ć¶ć¼ć«ććčÆćć¦ć¼ć¶ć¼ä½éØćęä¾ććććć«å¹ęēć«ä½æēØć§ćć¾ćć
å®éØēAPIćØćć¹ććć©ćÆćć£ć¹ć«é¢ććęę°ę å ±ć«ć¤ćć¦ćÆćåøøć«å ¬å¼ć®Reactććć„ć”ć³ććØć³ćć„ććć£ćŖć½ć¼ć¹ćåē §ććććØćåæććŖćć§ćć ććć
å
責äŗé
ļ¼ experimental_LegacyHiddenćÆå®éØēćŖAPIć§ććććććć®åä½ćå©ēØåÆč½ę§ćÆå°ę„ć®Reactć®ćć¼ćøć§ć³ć§å¤ę“ćććåÆč½ę§ćććć¾ććę¬ēŖē°å¢ć§ä½æēØććåć«ćÆćåæ
ćęę°ć®ććć„ć”ć³ćć§ē¢ŗčŖćć¦ćć ććć