|
|
@@ -13,16 +13,25 @@ const lang = ref<string>('zh_CN')
|
|
|
|
|
|
|
|
|
async function fetchData() {
|
|
|
+ if(!lang.value.length){
|
|
|
+ return;
|
|
|
+ }
|
|
|
loading.value = true
|
|
|
- const {code, data} = await selectGlobalPrompt({i18nKey: lang.value})
|
|
|
- if(code === 0){
|
|
|
- input.value = data
|
|
|
+ try{
|
|
|
+ const {code, data} = await selectGlobalPrompt({i18nKey: lang.value})
|
|
|
+ if(code === 0){
|
|
|
+ input.value = data
|
|
|
+ }
|
|
|
+ }finally{
|
|
|
+ loading.value = false
|
|
|
}
|
|
|
- loading.value = false
|
|
|
}
|
|
|
|
|
|
|
|
|
async function handleSave () {
|
|
|
+ if(!lang.value.length){
|
|
|
+ return;
|
|
|
+ }
|
|
|
const {code, data} = await updateGlobalPrompt({i18nKey: lang.value, text: input.value})
|
|
|
if(code === 0){
|
|
|
toast.success('保存成功')
|
|
|
@@ -30,31 +39,30 @@ async function handleSave () {
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-onMounted(async () => {
|
|
|
- await fetchData()
|
|
|
-})
|
|
|
-
|
|
|
+watch(()=> lang.value, ()=> {
|
|
|
+ fetchData()
|
|
|
+}, {immediate: true})
|
|
|
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
|
<div class="absolute-container">
|
|
|
<FaPageHeader title="全局提示词" />
|
|
|
- <FaPageMain class="flex-1 overflow-auto" main-class="flex-1 flex flex-col overflow-auto gap-4">
|
|
|
- <LangSelector v-model="lang"></LangSelector>
|
|
|
- <el-input
|
|
|
- v-model="input"
|
|
|
- style="width: 100%;"
|
|
|
- :autosize="{ minRows: 4, maxRows: 10 }"
|
|
|
- type="textarea"
|
|
|
- placeholder="Please input"
|
|
|
- class="mb-4"
|
|
|
- />
|
|
|
- <ElSpace>
|
|
|
- <ElButton type="primary" @click="handleSave">保存</ElButton>
|
|
|
- </ElSpace>
|
|
|
-
|
|
|
+ <FaPageMain class="flex-1 overflow-auto" main-class="flex-1 flex flex-col overflow-auto">
|
|
|
+ <div class="flex flex-col overflow-auto gap-4" v-loading="loading">
|
|
|
+ <LangSelector v-model="lang"></LangSelector>
|
|
|
+ <el-input
|
|
|
+ v-model="input"
|
|
|
+ style="width: 100%;"
|
|
|
+ :autosize="{ minRows: 4, maxRows: 10 }"
|
|
|
+ type="textarea"
|
|
|
+ placeholder="Please input"
|
|
|
+ class="mb-4"
|
|
|
+ />
|
|
|
+ <ElSpace>
|
|
|
+ <ElButton type="primary" @click="handleSave">保存</ElButton>
|
|
|
+ </ElSpace>
|
|
|
+ </div>
|
|
|
</FaPageMain>
|
|
|
</div>
|
|
|
</template>
|