Просмотр исходного кода

:bug: useEffect 缺少依赖text

visuddhinanda 3 лет назад
Родитель
Сommit
59166311d1
1 измененных файлов с 8 добавлено и 10 удалено
  1. 8 10
      dashboard/src/components/template/Wbw/PaliText.tsx

+ 8 - 10
dashboard/src/components/template/Wbw/PaliText.tsx

@@ -15,10 +15,8 @@ interface IWidget {
 const Widget = ({ text, primary = true }: IWidget) => {
 const Widget = ({ text, primary = true }: IWidget) => {
   const [paliText, setPaliText] = useState<string>();
   const [paliText, setPaliText] = useState<string>();
   const settings = useAppSelector(settingInfo);
   const settings = useAppSelector(settingInfo);
+  console.log("pali", text);
 
 
-  useEffect(() => {
-    setPaliText(text);
-  }, [text]);
   useEffect(() => {
   useEffect(() => {
     const _paliCode1 = GetUserSetting("setting.pali.script.primary", settings);
     const _paliCode1 = GetUserSetting("setting.pali.script.primary", settings);
     if (typeof _paliCode1 === "string") {
     if (typeof _paliCode1 === "string") {
@@ -27,26 +25,26 @@ const Widget = ({ text, primary = true }: IWidget) => {
 
 
       switch (paliConvertor) {
       switch (paliConvertor) {
         case "roman_to_my":
         case "roman_to_my":
-          setPaliText(roman_to_my(paliText));
+          setPaliText(roman_to_my(text));
           break;
           break;
         case "my_to_roman":
         case "my_to_roman":
-          setPaliText(my_to_roman(paliText));
+          setPaliText(my_to_roman(text));
           break;
           break;
         case "roman_to_si":
         case "roman_to_si":
-          setPaliText(roman_to_si(paliText));
+          setPaliText(roman_to_si(text));
           break;
           break;
         case "roman_to_thai":
         case "roman_to_thai":
-          setPaliText(roman_to_thai(paliText));
+          setPaliText(roman_to_thai(text));
           break;
           break;
         case "roman_to_taitham":
         case "roman_to_taitham":
-          setPaliText(roman_to_taitham(paliText));
+          setPaliText(roman_to_taitham(text));
           break;
           break;
         default:
         default:
-          setPaliText(paliText);
+          setPaliText(text);
           break;
           break;
       }
       }
     }
     }
-  }, [settings]);
+  }, [text, settings]);
   return text ? <span>{paliText}</span> : <></>;
   return text ? <span>{paliText}</span> : <></>;
 };
 };