Преглед изворни кода

fix: press enter to submit custom model name

JustSong пре 2 година
родитељ
комит
276163affd
1 измењених фајлова са 29 додато и 21 уклоњено
  1. 29 21
      web/src/pages/Channel/EditChannel.js

+ 29 - 21
web/src/pages/Channel/EditChannel.js

@@ -14,13 +14,13 @@ function type2secretPrompt(type) {
   // inputs.type === 15 ? '按照如下格式输入:APIKey|SecretKey' : (inputs.type === 18 ? '按照如下格式输入:APPID|APISecret|APIKey' : '请输入渠道对应的鉴权密钥')
   switch (type) {
     case 15:
-      return "按照如下格式输入:APIKey|SecretKey"
+      return '按照如下格式输入:APIKey|SecretKey';
     case 18:
-      return "按照如下格式输入:APPID|APISecret|APIKey"
+      return '按照如下格式输入:APPID|APISecret|APIKey';
     case 22:
-      return "按照如下格式输入:APIKey-AppId,例如:fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041"
+      return '按照如下格式输入:APIKey-AppId,例如:fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041';
     default:
-      return "请输入渠道对应的鉴权密钥"
+      return '请输入渠道对应的鉴权密钥';
   }
 }
 
@@ -207,6 +207,24 @@ const EditChannel = () => {
     }
   };
 
+  const addCustomModel = () => {
+    if (customModel.trim() === '') return;
+    if (inputs.models.includes(customModel)) return;
+    let localModels = [...inputs.models];
+    localModels.push(customModel);
+    let localModelOptions = [];
+    localModelOptions.push({
+      key: customModel,
+      text: customModel,
+      value: customModel
+    });
+    setModelOptions(modelOptions => {
+      return [...modelOptions, ...localModelOptions];
+    });
+    setCustomModel('');
+    handleInputChange(null, { name: 'models', value: localModels });
+  };
+
   return (
     <>
       <Segment loading={loading}>
@@ -350,29 +368,19 @@ const EditChannel = () => {
             }}>清除所有模型</Button>
             <Input
               action={
-                <Button type={'button'} onClick={() => {
-                  if (customModel.trim() === '') return;
-                  if (inputs.models.includes(customModel)) return;
-                  let localModels = [...inputs.models];
-                  localModels.push(customModel);
-                  let localModelOptions = [];
-                  localModelOptions.push({
-                    key: customModel,
-                    text: customModel,
-                    value: customModel
-                  });
-                  setModelOptions(modelOptions => {
-                    return [...modelOptions, ...localModelOptions];
-                  });
-                  setCustomModel('');
-                  handleInputChange(null, { name: 'models', value: localModels });
-                }}>填入</Button>
+                <Button type={'button'} onClick={addCustomModel}>填入</Button>
               }
               placeholder='输入自定义模型名称'
               value={customModel}
               onChange={(e, { value }) => {
                 setCustomModel(value);
               }}
+              onKeyDown={(e) => {
+                if (e.key === 'Enter') {
+                  addCustomModel();
+                  e.preventDefault();
+                }
+              }}
             />
           </div>
           <Form.Field>