Skip to content

Commit 0323ca9

Browse files
committed
fix (core): 修复初始化语言获取错误
1 parent 0a8a48f commit 0323ca9

1 file changed

Lines changed: 17 additions & 11 deletions

File tree

src/composables/useLanguageManager.ts

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ export function useLanguageManager(
88
toast: any
99
)
1010
{
11-
const currentLanguage = ref('python2')
11+
const currentLanguage = ref('')
1212
const supportedLanguages = ref<Language[]>([])
1313
const globalConfig = ref(null as any)
1414

1515
const envInfo = ref<EnvInfo>({
1616
installed: false,
1717
version: '检查中...',
1818
path: '检查中...',
19-
language: 'python'
19+
language: ''
2020
})
2121

2222
const getLanguageDisplayName = (languageValue: string) => {
@@ -25,6 +25,11 @@ export function useLanguageManager(
2525
}
2626

2727
const refreshEnvInfo = async () => {
28+
// 确保有当前语言才进行检查
29+
if (!currentLanguage.value) {
30+
return
31+
}
32+
2833
try {
2934
const info: LanguageInfo = await invoke('get_info', {
3035
language: currentLanguage.value
@@ -56,11 +61,6 @@ export function useLanguageManager(
5661
value: language.value,
5762
svgUrl: `/icons/${ language.value.replace(/\d+$/, '') }.svg`
5863
}))
59-
60-
// 设置默认语言
61-
if (supportedLanguages.value.length > 0 && !currentLanguage.value) {
62-
currentLanguage.value = supportedLanguages.value[0].value
63-
}
6464
}
6565
catch (error) {
6666
console.error('Error getting supported languages:', error)
@@ -79,9 +79,9 @@ export function useLanguageManager(
7979

8080
const filterPluginTemplate = (plugin: any) => {
8181
if (globalConfig.value && globalConfig.value.plugins) {
82-
return globalConfig.value.plugins.find((p: any) => p.language === plugin).template
82+
return globalConfig.value.plugins.find((p: any) => p.language === plugin)?.template || ''
8383
}
84-
return null
84+
return ''
8585
}
8686

8787
const handleLanguageChange = async (newLanguage: string) => {
@@ -100,17 +100,23 @@ export function useLanguageManager(
100100
}
101101

102102
const initialize = async () => {
103+
// 获取支持的语言列表
103104
await getSupportedLanguages()
104-
await refreshEnvInfo()
105+
106+
// 获取配置
105107
await getConfigure()
106108

107-
// 设置初始代码模板
109+
// 设置默认语言和初始代码模板
108110
if (supportedLanguages.value.length > 0) {
109111
currentLanguage.value = supportedLanguages.value[0].value
110112
console.log('当前语言:', currentLanguage.value)
113+
111114
const template = filterPluginTemplate(currentLanguage.value)
112115
console.log('使用的模板:', template)
113116
code.value = template
117+
118+
// 刷新环境信息(此时 currentLanguage 已经正确设置)
119+
await refreshEnvInfo()
114120
}
115121
else {
116122
code.value = 'No supported languages found'

0 commit comments

Comments
 (0)