Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Feature] 设置里的项目环境与运行配置统一为显式保存,并提示未保存的修改

Aperta
#816 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
48/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
typescript

Direzione di ricerca

Start with ProjectRuntimeSettingsView and its field bindings, especially the persistProjectRuntimeSettings() calls and onDisappear save path. Compare the macOS behavior with Windows' saveProjectEnvironmentSettings semantics and review issue #814 for the effective-value display. Done means both project and service forms use explicit saving, warn about drafts when leaving, report save outcomes consistently, avoid reloads while typing, and update the Agent Note.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement review: high

问题

同一个设置窗口里,表单的保存方式不统一:

位置 macOS Windows
设置 → 项目 · JDK & Maven 改一个字段就立即保存,关闭设置时再保存一次 点「保存」才生效
设置 → 运行配置(服务表单) 点「保存」或 ⌘S 点「保存」

用户在同一个窗口里会碰到两套规则,容易出现「以为保存了其实没有」或者「以为没保存其实已经生效」。而且改项目 JDK / Maven 会触发语言服务重载和运行配置刷新,边输入边保存意味着输入路径的过程中会反复触发重载。

期望

  • 项目页和服务表单统一用显式保存,两端一致。
  • 有未保存修改时明确提示:保存按钮可用、显示「有未保存的修改」;切换分类、切换服务或关闭设置时询问是否保存或放弃。
  • 保存结果反馈一致:成功、部分成功(例如默认值已保存但 Maven 或刷新失败)、失败。可复用 Windows 已有的 saveProjectEnvironmentSettings 语义:写入完成即算保存成功,刷新结果事后报告。

注意

  • macOS 项目页目前靠「准备完成前禁用表单、关闭时仅在准备完成后保存」来避免覆盖(#809 中的 0825ad06)。改成显式保存后,要重新确认加载期间和关闭时的行为,并删掉不再需要的自动保存路径(ProjectRuntimeSettingsView 各字段绑定里的 persistProjectRuntimeSettings() 调用和 onDisappear 保存)。
  • 与 #814 的「生效值」展示配合:未保存的草稿显示草稿对应的生效值,并标明尚未保存。

验收

  • 两端项目页与服务表单都是显式保存
  • 未保存修改有提示,离开时询问保存或放弃
  • 保存成功、部分成功、失败的反馈两端一致(中英文)
  • 输入过程中不触发语言服务重载
  • 更新相关 Agent Note

背景

来自 #809(关联 #749)合并前的用户视角评审。

Lingua principale
TypeScript
Stelle
1.8k
Fork
151
Merge medio
8h 24m
PR unite (30g)
345

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di 1lck/Lithe-IDEA

Tutte le issue di 1lck/Lithe-IDEA

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.