ΠΡΠΎΠ±Π»Π΅ΠΌΠ°
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² React Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
/** Documentation that will appear on hover in other places where this is imported */
function MyComponent() { return null }
ΠΠ΄Π½Π°ΠΊΠΎ Π² Svelte Ρ Π½Π΅ Π½Π°ΡΠ΅Π» ΡΠΏΠΎΡΠΎΠ±Π° ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅
Π― Ρ ΠΎΡΠ΅Π» Π±Ρ Π·Π½Π°ΡΡ, Π³Π΄Π΅ Ρ ΠΌΠΎΠ³Ρ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΡΡΠ΅Π½ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠΎΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ VSCode ΠΈ Vim / Neovim (Ρ coc.nvim), ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΊΡΡΡΠΎΡΠ°.
Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠΈΠ»Π»ΡΡΡΡΠΈΡΠΎΠ²Π°ΡΡ, Π·Π΄Π΅ΡΡ Ρ Π½Π°Ρ
ΠΎΠΆΡ MyComponent
Π½ΠΎ Π²ΠΈΠΆΡ ΡΠΎΠ»ΡΠΊΠΎ import MyComponent
:
Π― Ρ
ΠΎΡΡ, ΡΡΠΎΠ±Ρ ΠΌΠΎΡ ΡΡΡΠΎΠΊΠ° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Documentation that will appear on hover in other places where this is imported
Π±ΡΠ»Π° Π²ΠΊΠ»ΡΡΠ΅Π½Π° Π²ΠΎ Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΡ.
ΠΠ΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Ρ ΠΈΡΠΊΠ°Π» ΡΡΠΎ Π² Google ΠΈ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π» Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ Ρ TypeScript, ΠΈ Ρ Π½Π΅ ΠΌΠΎΠ³Ρ Π½Π°ΠΉΡΠΈ ΡΠΏΠΎΡΠΎΠ± ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ. Π― Π½Π°ΡΠ΅Π» ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Svelte, Π½ΠΎ ΠΎΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠΈΠΏΠΎΠ² ΠΎΠΏΠΎΡ.
ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ: ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ ΠΎΠ±ΡΡΠΆΠ΄Π°Π΅ΠΌ, Π»ΡΡΡΠ΅ Π»ΠΈ ΡΡΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ, Ρ ΡΠΎΠ·Π΄Π°Π» Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π·Π΄Π΅ΡΡ https://github.com/sveltejs/svelte/issues/5102
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π±Π΅Π· ΡΠ΅Π³Π° ΡΡΠ΅Π½Π°ΡΠΈΡ, Ρ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ HTML-ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ. ΠΠ°ΡΠ΅ΠΌ svelte2tsx
Π±ΡΠ΄Π΅Ρ ΠΈΡΠΊΠ°ΡΡ HTML-ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠ΅ΡΡ ΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π³Π° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, @doc
), ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π² Π²ΠΈΠ΄Π΅ jsdoc Π½Π°Π΄ ΡΠΊΡΠΏΠΎΡΡΠΎΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠ½Π΅Π½ΠΈΡ? ΠΡΡΠ³ΠΈΠ΅ ΠΈΠ΄Π΅ΠΈ?
ΠΠ½Π΅ Π±ΡΠ»ΠΎ Π±Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎ. ΠΠ΄Π½Π°ΠΊΠΎ Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ Π΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ _ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ_ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ.
ΠΠ° ΡΠΌ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
/**
* <strong i="6">@file</strong> Here is my documentation for this component
*/
Π Π½Π°ΡΠ°Π»Π΅ ΡΠ°ΠΉΠ»Π°. ΠΠΎ Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΡΠ°ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ HTML-ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, Π²Π΅ΡΠ½ΠΎ?
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π΅Π³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΡ
ΠΎΠΆΠΈΠΌ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅Π³ΠΈ, Ρ ΡΡΠ²ΡΡΠ²ΡΡ, ΡΡΠΎ ΡΠ΅Π³ <svelte:documentation>
ΠΏΠΎΡ
ΠΎΠΆΠΈΠΉ Π½Π° <svelte:head>
ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΠΏΠ»ΠΎΡ
ΠΈΠΌ, Π½ΠΎ ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ΅.
ΠΠΎΠΆΠ΅Ρ, Π΄Π°ΠΆΠ΅ <svelte:options documentation="blabla" />
?
ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ Π΄ΠΎΡΠ°Π±ΠΎΡΠΊΠΈ Π² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ΅ ΠΈ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎ. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ.
Π― ΡΠΎΠ·Π΄Π°Π» Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΡ Π·Π°Π΄Π°ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎ, ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΡΠΌΠΎΠΆΠ΅ΠΌ Π»ΠΈ ΠΌΡ ΠΏΡΠΈΠΉΡΠΈ ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡ-ΡΠΎ Π²ΡΠ²ΠΎΠ΄Ρ: +1:
ΠΠΎΠ»ΠΎΠ²ΠΈΠ½Π° ΡΡΠΎΠ³ΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ https://github.com/sveltejs/language-tools/pull/282 . LSP Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π» ΡΡΡΠΎΠΊΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΊΡΡΡΠΎΡΠ°.
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠ½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΡΠΎΠΊΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ· HTML-ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ @doc
ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅Π΅ Π² addComponentExport
Π² svelte2tsx.
@dummdidumm Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΡΠΎΠΊΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΊ ΡΠΊΡΠΏΠΎΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΠΈΠΌΠ΅Π½ΠΈ:
export default class {
$$prop_def = __sveltets_partial(render().props)
$$slot_def = render().slots
}
Π― ΠΏΠΎΠ»Π°Π³Π°Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡΡ Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, - ΡΡΠΎ render
ΠΈ ΡΠΊΡΠΏΠΎΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΡΠΎΠ³Π΄Π° Π±Π΅Π·Π²ΡΠ΅Π΄Π½ΠΎ Π΄Π°Π²Π°ΡΡ Π΅ΠΌΡ ΠΎΠ±ΡΠ΅Π΅ ΠΈΠΌΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Component
? Π ΠΌΠΎΠΆΠ΅Ρ ΠΊΠΎΠ²ΡΡΡΡΡ ΠΏΠΎ Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»Π°?
ΠΠ°, ΡΡΠΎ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ.
ΠΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π»ΠΈ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Π² ΡΡΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΡΠ°ΡΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠ»ΠΈ ΠΎΠ½ Π½ΡΠΆΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ²?
ΠΡΠΎΡΡΠΎ Π΄Π»Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°.
ΠΠ± ΡΡΠΎΠΌ ΡΠΊΡΠΏΠΎΡΡΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΠΊΠ°ΠΊ ΡΡΠΎ Π²Π»ΠΈΡΠ΅Ρ Π½Π° Π°Π²ΡΠΎΠ·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠΌΠΏΠΎΡΡΠ°.
ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, Ρ ΠΌ. Π― Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ΅ΠΉΡΠ°Ρ. ΠΡΠ»ΠΈ Ρ ΠΏΠΎΠΏΡΡΠ°ΡΡΡ ΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π² ΡΡΠ΅Π΄Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ TS, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
// Component.ts
export default class {}
Π£ ΠΌΠ΅Π½Ρ Π½Π΅Ρ Π°Π²ΡΠΎΠ·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»Ρ Component
Π² Π΄ΡΡΠ³ΠΈΡ
ΡΠ°ΠΉΠ»Π°Ρ
, Π½ΠΎ Π½Π° Svelte ΡΡΠΎ ΠΊΠ°ΠΊ-ΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠ½Π΅, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ Π² LSP.
Π Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Ρ ΡΠ΄Π΅Π»Π°Ρ ΡΡΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ:
// Component.ts
export default class Component {}
ΠΠ°ΡΠ΅ΠΌ Ρ ΠΏΠΎΠ»ΡΡΠ°Ρ Π°Π²ΡΠΎΠ·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠΊΡΠΏΠΎΡΡΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΊΠ°ΠΊ Component
Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ
ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠΎΡΡΠΎΠΌΡ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΡ ΡΡΠ°Π²ΠΊΡ - Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°Π·ΠΎΠ²ΠΈΡΠ΅ ΡΠΊΡΠΏΠΎΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅, ΠΊΠ°ΠΊ ΡΠ°ΠΉΠ», Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΡΠΉΡΠ΅ Π΅Π³ΠΎ Π²ΠΆΠΈΠ²ΡΡ.
Π₯ΠΎΡΠΎΡΠΎ, Ρ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π» Π΄Π²Π° Π²Π°ΡΠΈΠ°Π½ΡΠ°, Π½ΠΎ Ρ Π½Π°ΡΠΈΠΌ LSP Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»Ρ Π°Π²ΡΠΎΠ·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΡΡΠΎ:
export default class {
// etc
}
ΠΠ΅ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π»:
export default class Name
.~ ΠΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. Π’Π΅ΠΏΠ΅ΡΡ Ρ ΠΈΡΡ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ (https://github.com/sveltejs/language-tools/blob/master/packages/language-server/src/plugins/typescript/features/CompletionProvider.ts), ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ, Π³Π΄Π΅ ΠΡΠΈΡΠΈΠ½Π° Π² ΡΠΎΠΌ, ΡΡΠΎ Π² ΡΡΠ΅Π΄Π°Ρ ΡΠΎΠ»ΡΠΊΠΎ Ρ TS Ρ ΠΏΠΎΠ»ΡΡΠ°Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠΊΡΠΏΠΎΡΡΠ° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠ»Π°ΡΡΠ°. ~
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅: ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ° ΠΈ Π΅Π³ΠΎ ΡΠΊΡΠΏΠΎΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² Π΄ΡΡΠ³ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΈΠΌΡ ΡΠΊΡΠΏΠΎΡΡΠ° ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΠ°ΠΉΠ»Π°. Π‘ΠΎΠ±ΠΈΡΠ°ΡΡΡ Π½Π° ΡΡΠΎΡ Π²Π°ΡΠΈΠ°Π½Ρ.
ΠΠ°, Π² Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠΈ ΠΈΠΌΠΏΠΎΡΡΠ° Π΄Π»Ρ svelte-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π΅ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄, ΠΏΠΎ ΡΡΡΠΈ, ΡΠΎΠ·Π΄Π°ΡΡΠΈΠΉ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠΏΠΎΡΡΠ°. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎΡ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠΎΡΠΈΡΡ, Π΅ΡΠ»ΠΈ svelte2tsx ΠΈΠΌΠ΅Π΅Ρ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΊΡΠΏΠΎΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΠ°ΠΉΠ»Π°.
ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ ΡΠ΅ΡΠ΅Π· https://github.com/sveltejs/language-tools/pull/285