๋ฒ๊ทธ ์ค๋ช
์ด๊ฒ์ ์์ ํ ๋ฏธ์ ์
๋๋ค. VScode์์ ํ์ผ ๋๋ ๊ตฌ์ฑ ์์๋ฅผ ์๋์ผ๋ก ๊ฐ์ ธ์ฌ ๋ ์ ๊ฐ์ ธ ์ค๊ธฐ๊ฐ ํ์ผ์ ์ ๋๋ก ์ถ๊ฐ๋์ง ์์ต๋๋ค.
.ts
๋ฐ .svelte
ํ์ผ์ ๊ฒฝ์ฐ ๋ค๋ฅธ ์์น์ ์ฝ์
๋ฉ๋๋ค.typescript.preferences.quoteStyle: single
๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ์ ธ ์ค๊ธฐ์ ์ฌ์ ํ ํฐ ๋ฐ์ดํ๊ฐ ์ฌ์ฉ๋ฉ๋๋ค.์ฌ์์ฐํ๋ ค๋ฉด
sveltejs/template
์์ ์ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค๊ณ ๋น Test.svelte
๊ตฌ์ฑ ์์๋ฅผ ๋ง๋ ๋ค์ App.svelte
๋ก ์๋ ๊ฐ์ ธ์ต๋๋ค. TypeScript ํ๋ก์ ํธ์์ .ts
ํ์ผ์์ ๊ฐ์ ธ ์ค๊ธฐ๊ฐ ์ค ๋ฐ๊ฟ์์ด ์คํฌ๋ฆฝํธ ํ๊ทธ ๋ฐ๋ก ๋ค์ ์ฝ์
๋๋ ๊ฒ์ ๋ณผ ์๋ ์์ต๋๋ค.
์์๋๋ ํ๋
์๋ ๊ฐ์ ธ ์ค๊ธฐ๊ฐ ์ผ๋ฐ .ts
ํ์ผ์์์ ๋๊ฐ์ด ์๋ ํ ๊ฒ์ผ๋ก ์์ํ์ง๋ง ์คํฌ๋ฆฝํธ ํ๊ทธ๋ก ์ธํด ์ผ๋ถ ๋ค์ฌ ์ฐ๊ธฐ๊ฐ ์์ต๋๋ค.
๋ด ์ฝ๋๋ ์๋ ์์ ์์ด ๋ค์๊ณผ ๊ฐ์ด ๋ณด์ผ ๊ฒ์ ๋๋ค.
<script lang="ts">
import Test from './Test.svelte';
import { testStore } from './test';
export let name;
</script>
์์คํ (๋ค์ ์ ๋ณด๋ฅผ ์์ฑํ์ญ์์ค) :
๊ทผ๋ณธ์ ์ธ ๋ฌธ์ ๋ ํ
ํ๋ฆฟ ๋ด์์ ๊ฐ์ ธ ์ค๋ ๋์ ์ฝ๋๊ฐ ์ ํจํ์ง ์๊ธฐ ๋๋ฌธ์ ๋ ์ฌํ ์ปดํ์ผ๋ฌ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค๋ ๊ฒ์
๋๋ค. ์ด๋ ๊ฒํ๋ฉด svelte2tsx
์์ ์ ํจํ tsx
ํ์ผ์ ์์ฑ ํ ์ ์์ผ๋ฏ๋ก ์คํฌ๋ฆฝํธ ํ๊ทธ ์ฝํ
์ธ ๋ง ์ฌ์ฉํ๋๋กํฉ๋๋ค. ํ์๊ฐ ์ ํจํ ์ฝ๋๋ฅผ ์ถ๋ ฅํ๋ฉด svelte2tsx
๋ ๋ณํ ๋ tsx
ํ์ผ์ ์์ฑํฉ๋๋ค. ์ด๋ ๊ฒํ๋ฉด TypeScript๊ฐ ๊ฐ์ ธ ์ค๊ธฐ๋ฅผ ๋ค๋ฅธ ์ง์ ์ ์ฝ์
ํ๊ณ ์์ฑ ๋ tsx
์์ ์๋ svelte
๋งคํํ๋ฉด ๋งจ ์์ ๊ฐ์ ธ์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ์ด๋ป๊ฒ ์ ํด๊ฒฐํ ์ ์์์ง ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ํ์ง๋ง ์ฌ์ฉ์ ๊ธฐ๋ณธ ์ค์ (์ธ์ฉ๋ฌธ ์คํ์ผ)์ ๊ณ ์ํ๋ ๊ฒ์ ๊ฐ๋ฅํด์ผํฉ๋๋ค. ํด๊ฒฐ ๋ฐฉ๋ฒ์ผ๋ก "๊ฐ์ ธ ์ค๊ธฐ ๊ตฌ์ฑ"๋ช
๋ น์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ๋ ์์ ์์์ด ๋ค์ฌ ์ฐ๊ธฐ ๋ฐ ๋ฐ์ดํ ์คํ์ผ์ ์ฒ๋ฆฌํฉ๋๋ค.
์ค๋ช ๋ฐ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ํด @dummdidumm ์๊ฒ ๊ฐ์ฌ๋๋ฆฝ๋๋ค! ๐
๊ธฐ์กด ์์ ํ ์๋์ ์ฝ์ ํ ์์๋ ๋ฐฉ๋ฒ์ด ์๋ค๋ฉด ์ง๊ธ ๋น์ฅ ์๋ํ๋ ๋ฐฉ์์ด ํฌ๊ฒ ๊ฐ์ ๋ ๊ฒ์ ๋๋ค. ํ์ฅ์ (๋น๋์ค ํํ ๋ฆฌ์ผ์์์ ๊ฐ์ด) ์ข ๋๋ณด๊ธฐ ์ข์ ๊ฒ์ด๊ณ , ๋ ์ค์ํ ๊ฒ์ ๊ฐ์ ธ ์ค๊ธฐ๊ฐ ์ผ๊ด๋ ๋๋์ด๋ค ๊ฒ์ ๋๋ค (์ต์ ๊ฐ์ ธ ์ค๊ธฐ๋ฅผ ์ฐพ๋ ๊ฒ์ ๋๋ฌธ ๊ฒฝ์ฐ์ ๋๋ค).
Vetur๋ก ์ธ ๊ฐ์ง ๊ฐ์ ธ ์ค๊ธฐ ( test
, test2
, test3
์์๋๋ก)๋ฅผ ํ
์คํธํ์ผ๋ฉฐ ์ฌ๋ฐ๋ฅธ ์์น์ ์ฝ์
๋์์ต๋๋ค. ๋น๊ต ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
Vetur :
<script lang="ts">
import Vue from 'vue';
import { testStore1 } from './test';
import { testStore2 } from './test2';
import { testStore3 } from './test3';
export default Vue.extend({ /*...*/ });
</script>
VSCode ์ฉ Svelte :
<script lang="ts">import { testStore3 } from "./test3";
import { testStore2 } from "./test2";
import { testStore } from "./test";
export let name: string;
</script>
js / ts ํ๋์ ๋ ๋ค๋ฅธ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ์์ค ๋งต์ ๋ง์ง๋ง ๊ฐ์ ธ ์ค๊ธฐ์ ๋ค์ ์ค์ ์๋ ์์น์ ๋งคํ ํ ์ ์์ต๋๋ค.