Typescript: console.log ์ž๋™ ๊ฐ€์ ธ ์˜ค๊ธฐ import console = require ( 'console');

์— ๋งŒ๋“  2019๋…„ 03์›” 10์ผ  ยท  42์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: microsoft/TypeScript

์žฌํ˜„ ๋‹จ๊ณ„ :
console. ํ•ฉ๋‹ˆ๋‹ค. 10 ๋ฒˆ ์ค‘ 7 ๋ฒˆ, vscode๋Š” ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๋กœ ์ด์–ด์ง€๋Š” ํŒŒ์ผ์˜ ๊ฐ€์ ธ ์˜ค๊ธฐ ์ƒ๋‹จ์— import console=require('console'); ๋ฅผ ์‚ฝ์ž…ํ•ฉ๋‹ˆ๋‹ค.

๋Œ€ ์ฝ”๋“œ์—์„œ ๊ฐ€์žฅ ์„ฑ๊ฐ€์‹  ๋ฌธ์ œ ํ•˜๋‚˜.


๋ชจ๋“  ํ™•์žฅ์ด ๋น„ํ™œ์„ฑํ™” ๋œ ๊ฒฝ์šฐ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๊นŒ? : ํ™•์‹คํ•˜์ง€ ์•Š์Œ

Bug Fixed VS Code Priority

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

src ๋ฃจํŠธ์— console.d.ts ํŒŒ์ผ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ๋‹ค์Œ ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

declare module 'console' {
    export = typeof import("console");
}

๊ฐ€์ ธ ์˜ค๊ธฐ๊ฐ€ ์ˆ˜์ •๋ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  42 ๋Œ“๊ธ€

์—ฌ๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค (Ubuntu 18.04). ๊ทธ๊ฒƒ์€ ์ƒˆ๋กœ์šด VSCode ์—…๋ฐ์ดํŠธ์™€ ํ•จ๊ป˜ ์™”์Šต๋‹ˆ๋‹ค .. ๋งค์šฐ ์„ฑ๊ฐ€์‹ .

node ์˜ ์œ ํ˜• ์ •์˜๋กœ ์ธํ•ด ๋ฐœ์ƒํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ’€์ด:

declare module "console" {
    export = console;
}

../node_modules/@types/node/index.d.ts ์ •์˜๊ฐ€ ์—…๋ฐ์ดํŠธ ๋  ๋•Œ๊นŒ์ง€ ์ž„์‹œ ์ˆ˜์ • ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋˜๋Š” console ๋Œ€ํ•œ ์œ ํ˜• ์ •์˜๋ฅผ ์„ ์–ธํ•˜๋Š” ๋‹ค๋ฅธ ์„ค์น˜๋œ ๋…ธ๋“œ ๋ชจ๋“ˆ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. import console=require('console') ์—ฐ๊ฒฐ๋˜๋Š” ๊ฒฝ๋กœ๋ฅผ ๋”ฐ๋ผ ๊ฐ€๋ฉด ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด stackoverflow์— ๋Œ€ํ•œ ํฌ๋ ˆ๋”ง.

๋ชจ๋“  ํ™•์žฅ์ด ๋น„ํ™œ์„ฑํ™” ๋œ ์ตœ์‹  VS Code ๋‚ด๋ถ€์ž ๋นŒ๋“œ ์—์„œ ์ด๊ฒƒ์ด ์žฌํ˜„๋ฉ๋‹ˆ๊นŒ? ์ตœ์‹  TypeScript ๋ฒ„์ „๋„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

๋˜ํ•œ @Zlass ์–ด๋–ค ๋ฒ„์ „์˜ ๋…ธ๋“œ ์œ ํ˜•์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ์ตœ๊ทผ @types/node ์—์„œ ํ•ด๋‹น ์„ ์–ธ์„ ๋ณผ ์ˆ˜ ์—†์œผ๋ฉฐ์ด ๋ฌธ์ œ๋ฅผ ์žฌํ˜„ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์•Œ๊ฒ ์Šต๋‹ˆ๋‹ค. ์›์ธ์„ ์ฐพ์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋…ธ๋“œ์˜ console ์œ ํ˜•๊ณผ ์ถฉ๋Œํ•˜๋Š” @types/react-native ์— ์˜์กดํ•˜๋Š” @types/styled-components ๊ด€๋ จ ๋ฒ„๊ทธ ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š”์™€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋ฐ˜์‘ ์ƒˆ๋กœ์šด ํƒ€์ดํ”„ ๋ผ์ดํ„ฐ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ๋‚ด๋ถ€ ๋นŒ๋“œ์—์„œ ์žฌํ˜„ ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค create-react-app ํ•˜๊ณ  ์„ค์น˜ @types/styled-components .

๋‚˜๋Š” ์ด๊ฒƒ์ด VS ์ฝ”๋“œ ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์œผ๋ฉฐ ์—ฌ๊ธฐ DefinitelyTyped ์ด๋ฏธ ์—ด๋ฆฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์Œ, ์Šคํƒ€์ผ์ด ์ง€์ •๋œ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋„์„œ๊ด€๊ณผ ํ•จ๊ป˜ ์ œ๊ณต๋˜๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

@mschipperheyn console ์ž๋™ ์™„์„ฑ์„ ์‹œ๋„ ํ•  ๋•Œ ํ‘œ์‹œ๋˜๋Š” ๋‚ด์šฉ์„ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๊ฐ ์ž๋™ ์™„์„ฑ ์ œ์•ˆ์˜ ์ฐธ์กฐ๋ฅผ ๋“ค์—ฌ๋‹ค ๋ด„์œผ๋กœ์จ console ์˜ ๋‹ค๋ฅธ ์ •์˜๋ฅผ ์„ ์–ธํ•˜๋Š” ํŒจํ‚ค์ง€๋ฅผ ํŒŒ์•…ํ•  ์ˆ˜์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” (๋ฒ„์ „ 1.30.2์—์„œ) ๊ฐ™์€ ๊ฒƒ์„ ๊ฒฝํ—˜ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Styled Components๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” React Native ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค (ํ•˜์ง€๋งŒ ๋‹ค๋ฅธ lib๋Š” ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค). ์•„๋ž˜์— console ์ž…๋ ฅํ•˜๋ฉด ์ž๋™ ์™„์„ฑ์˜ ๊ฐ ์ถœ๋ ฅ์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ๋Š” ์ž๋™ import ํ•˜๊ณ  ๋‘ ๋ฒˆ์งธ๋Š” ์ž๋™ require ํ•ฉ๋‹ˆ๋‹ค.

Screen Shot 2019-03-20 at 17 47 43

ํŽธ์ง‘ : ๋‚ด ์„ค์ •์—์„œ 207 ํ–‰์˜ ~/Library/Caches/typescript/3.2/node_modules/@types/node/index.d.ts ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.

src ๋ฃจํŠธ์— console.d.ts ํŒŒ์ผ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ๋‹ค์Œ ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

declare module 'console' {
    export = typeof import("console");
}

๊ฐ€์ ธ ์˜ค๊ธฐ๊ฐ€ ์ˆ˜์ •๋ฉ๋‹ˆ๋‹ค.

์ž„์‹œ ์ˆ˜์ •์— ๋Œ€ํ•ด @BrendonSled ์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค ... ๊ทธ๊ฒƒ์ด ๋‚˜๋ฅผ ์œ„ํ•ด ํ•ด๊ฒฐ ํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด์ œ ๋‹ค๋ฅธ ๋ชจ๋“  ํ”„๋กœ์ ํŠธ์— ์ด๊ฒƒ์„ ์ถ”๊ฐ€ํ•˜์‹ญ์‹œ์˜ค ๐Ÿ™ˆ

์ด ๋ฌธ์ œ๋Š” '์™ธ๋ถ€'๋กœ ํ‘œ์‹œ๋˜์—ˆ์œผ๋ฉฐ ์ตœ๊ทผ ํ™œ๋™์ด ์—†์Šต๋‹ˆ๋‹ค. ์ฒญ์†Œ๋ฅผ ์œ„ํ•ด ์ž๋™์œผ๋กœ ๋‹ซํ˜”์Šต๋‹ˆ๋‹ค.

@BrendonSled ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค !! ๋งˆ์ง€๋ง‰์œผ๋กœ ์ž„์‹œ ์†”๋ฃจ์…˜

๋ˆ„๊ตฌ๋“ ์ง€ ์ž„์‹œ ์†”๋ฃจ์…˜์„ ๋„˜์–ด์„œ ์ด์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? Google์€์ด ๋งํฌ์™€ ์ด์ „์— ๊ฒŒ์‹œ ๋œ StackOverflow ๋งํฌ ๋งŒ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์†”๋ฃจ์…˜์— ๋Œ€ํ•œ @BrendonSled thx

์ด๊ฒƒ์€ ๋‚˜๋ฅผ ๋ฏธ์น˜๊ฒŒ ๋งŒ๋“ ๋‹ค ...

์•„์•„, ๋„ˆ๋ฌด ์งœ์ฆ๋‚˜!

์—ฌ๊ธฐ์—๋„ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” Linux Mint 19.1์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด auto import ๊ธฐ๋Šฅ์„ ํ•ด๊ฒฐํ•  ์ˆ˜์žˆ๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

File : arrow_forward : Preferences : arrow_forward : Settings : arrow_forward : Javascript Auto Imports ๋ฐ / ๋˜๋Š” Typescript Auto Imports : arrow_forward : ์„ ํƒ ์ทจ์†Œ Enable/disable auto imports suggestions

๋˜๋Š”

File : arrow_forward : Preferences : arrow_forward : User Snippets : arrow_forward : global.code-snippets : arrow_forward : /vscode/snippets/global.code-snippets : arrow_forward : ๊ทธ๋Ÿฐ ๋‹ค์Œ์ด ๊ธ€๋กœ๋ฒŒ ์Šค ๋‹ˆํŽซ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์ €์žฅํ•ฉ๋‹ˆ๋‹ค (๋˜๋Š” ๊ธ€๋กœ๋ฒŒ ์Šค ๋‹ˆํŽซ์„ ์›ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์–ธ์–ด ๋ณ„ ์Šค ๋‹ˆํŽซ์„ ์ƒ์„ฑ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ž๋™ ์ œ์•ˆ ๋ชฉ๋ก์˜ ์ฒซ ๋ฒˆ์งธ ํ•ญ๋ชฉ ์•„๋ž˜์— ์ฝ˜์†” ์Šค ๋‹ˆํŽซ์ด ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค) :

{
  "Print to console": {
    prefix: ["console", "console.", "console.l", "console.lo", "console.log"],
    body: ["console.log($1);"],
    description: "Log output to console"
  }
};

Visual Studio 1.33.1 ๋…ธ๋“œ 10์—์„œ ๋™์ผํ•œ ๋ฌธ์ œ
์ž„์‹œ ์†”๋ฃจ์…˜์ด ๋‚˜๋ฅผ ์œ„ํ•ด ์ผํ–ˆ์Šต๋‹ˆ๋‹ค ...

์ด๊ฒƒ์€ ๊ฒฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ํŠน์ • ์ž๋™ ์ˆ˜์ž…ํ’ˆ์„ ๋ธ”๋ž™๋ฆฌ์ŠคํŠธ์— ์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๋งค์šฐ ์„ฑ๊ฐ€์‹  ์ผ์ž…๋‹ˆ๋‹ค. @BrendonSled ๊ฐ€ ๊ฒŒ์‹œ ํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ์—„๊ฒฉํ•œ ts์— ๋”ฐ๋ผ ์œ ํšจํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

'export=' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer.   ts(7022)

@AndrewMorsillo ๋Š” ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋ช‡ ๊ฐ€์ง€ ์ œ์•ˆ์„ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.

ํŠนํžˆ, ์ด ์ œ์•ˆ๊ณผ์ด ์ œ์•ˆ ์ด ๋‚˜์—๊ฒŒ ์ƒํ™ฉ์„ ๊ฐœ์„  ํ•œ ๊ฒƒ ๊ฐ™๋‹ค.

@RyanCavanaugh ํŒจํ‚ค์ง€์— ์ž˜๋ชป๋œ d.ts๊ฐ€ ์žˆ์–ด๋„ ๊ฒฝํ—˜์„ ๊ฐœ์„  ํ•  ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๊ทธ์˜ ๋Œ€๋‹ต์€ @mattcarlotta ์ž…๋‹ˆ๋‹ค. VSCode๊ฐ€ ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์กด์ค‘ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™๊ธฐ ๋•Œ๋ฌธ์— JSON์— ๋Œ€ํ•ด ์ด๊ฒƒ์„ ํ˜•์‹ํ™”ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

{
    "Print to console": {
      "prefix": ["console", "console.", "console.l", "console.lo", "console.log"],
      "body": ["console.log($1);"],
      "description": "Log output to console"
    }
}

์ด๊ฒƒ์€ React Native ํ”„๋กœ์ ํŠธ์—์„œ ๋‚˜๋ฅผ ๐Ÿ™ƒ๋กœ ์ด๋Œ์—ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋Š” ์ˆ˜์ •๋˜์–ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์—ฌ์ „ํžˆ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ์ œ๋ฐœ

  1. ์ด ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์„ค์น˜ ํ•œ ํ›„์—๋„ ์—ฌ์ „ํžˆ ๋™์ž‘์ด ๋‚˜ํƒ€๋‚˜๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
  2. ๋ฌธ์ œ๋ฅผ ์ตœ์†Œํ•œ์œผ๋กœ ์žฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”.
ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์„ค์น˜ ํ•œ ๋‹ค์Œ ์ž๋™ ๊ฐ€์ ธ ์˜ค๊ธฐ๋ฅผ ์žƒ์—ˆ์Šต๋‹ˆ๋‹ค.
์ž๋™ ๊ฐ€์ ธ ์˜ค๊ธฐ๋ฅผ ์›ํ•˜์ง€๋งŒ ์ฝ˜์†” ์ž๋™ ๊ฐ€์ ธ ์˜ค๊ธฐ๋Š” ์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ข‹์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋ฅผ ์ตœ์†Œํ•œ์œผ๋กœ ์žฌํ˜„ ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด https://github.com/Microsoft/TypeScript์— ์ œ์ถœํ•ด์•ผํ•˜๋Š” ๋ณ„๋„์˜ ๋ฌธ์ œ์ฒ˜๋Ÿผ ๋“ค๋ฆฝ๋‹ˆ๋‹ค.

@DanielRosenwasser ๊ทธ ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ๋‚˜๋ฅผ ์œ„ํ•ด ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒŒ ๋ญ”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ƒˆ ๋ฒ„์ „์˜ VSCode๊ฐ€ ์ถœ์‹œ ๋  ๋•Œ๊นŒ์ง€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๊นŒ, ์•„๋‹ˆ๋ฉด๋ณด๋‹ค ์˜๊ตฌ์  ์ธ ์†”๋ฃจ์…˜์ž…๋‹ˆ๊นŒ?

์ด๋Š” ๋ฌธ์ œ๊ฐ€ ์ด๋ฏธ ์ˆ˜์ •๋˜์—ˆ์œผ๋ฉฐ ๋‹ค์Œ ๋ฒ„์ „์˜ VS Code์—์„œ ์ˆ˜์ • ๋  ๊ฒƒ์ž„์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์ตœ์‹  ๋ฒ„์ „์˜ vscode์—์„œ ์—ฌ์ „ํžˆ ์ˆ˜์ •๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ตœ๊ทผ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์ด ๋ฌธ์ œ๋Š” ๋‚˜๋ฅผ ์œ„ํ•ด ์ตœ์‹  ๋ฒ„์ „์˜ vscode์—์„œ๋„ ์—ฌ์ „ํžˆ ์ง€์†๋ฉ๋‹ˆ๋‹ค.

๋ฏธ์•ˆ ๋‚ด ์‹ค์ˆ˜ ์•ผ. ๋‹ค์Œ ๋‹ฌ ์ถœ์‹œ ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. https://marketplace.visualstudio.com/items?itemName=ms-vscode.vscode-typescript-next์˜ ๋‚ด๋ถ€์ž ๋ฐ ์‚ฌ์šฉ์ž๋Š” ์ˆ˜์ • ์‚ฌํ•ญ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@DanielRosenwasser ํ™•์‹คํ•œ๊ฐ€์š”? JavaScript and TypeScript Nightly ์„ค์น˜ํ–ˆ๋Š”๋ฐ ์—ฌ์ „ํžˆ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

VScode Insider (ํ”Œ๋Ÿฌ๊ทธ์ธ ์—†์Œ)์™€ VSCode (ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ์„ค์น˜๋œ ์ƒํƒœ)์— ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค TS 3.6.0-dev.20190810 ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

VSCode

Version: 1.37.0
Commit: 036a6b1d3ac84e5ca96a17a44e63a87971f8fcc8
Date: 2019-08-08T01:22:37.660Z
Electron: 4.2.7
Chrome: 69.0.3497.128
Node.js: 10.11.0
V8: 6.9.427.31-electron.0
OS: Darwin x64 18.7.0

VSCode ๋‚ด๋ถ€์ž

Version: 1.38.0-insider
Commit: ffa22b268f451b5211abbe2d2a47e6b753b55b1a
Date: 2019-08-13T07:23:55.783Z
Electron: 4.2.9
Chrome: 69.0.3497.128
Node.js: 10.11.0
V8: 6.9.427.31-electron.0
OS: Darwin x64 18.7.0

Screenshot 2019-08-13 at 17 08 37

๋‹ค์‹œ ์—ด์–ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ์•„์ง ์ˆ˜์ •๋˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— (Typescript Nightly ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์‚ฌ์šฉํ•˜๋”๋ผ๋„)

์•ˆ๋…•ํ•˜์„ธ์š”, ๋ˆ„๊ตฐ๊ฐ€์ด ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ์‹ค์ œ ์ €์žฅ์†Œ๋ฅผ ๊ณต์œ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๋ฏธ์นœ ์†Œ๋ฆฌ ๊ฐ™์ง€๋งŒ ์ „ํ˜€ ์žฌํ˜„ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. TypeScript๋Š” 1 ๋…„ ๋„˜๊ฒŒ ๊ธ€๋กœ๋ฒŒ์„ ๋‹ค์‹œ ๋‚ด๋ณด๋‚ด๋Š” ์„ ์–ธ์— ๋Œ€ํ•ด ์ž๋™ ๊ฐ€์ ธ ์˜ค๊ธฐ๋ฅผ ์ œ์™ธํ•˜๋Š” ํŠน์ˆ˜ ์ฒ˜๋ฆฌ ๊ธฐ๋Šฅ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„ ๋ชจ๋‘์—๊ฒŒ ๊ทธ๋Ÿฐ ์ผ์ด ์ผ์–ด๋‚˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์‚ฌ์‹ค์€ ๋งค์šฐ ์ด์ƒํ•˜์ง€๋งŒ ๋ถ„๋ช…ํžˆ ๊ฝค ํ”ํ•œ ์ผ์ด ๊ณ„์†๋˜๊ณ  ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ๊ฐ€์žฅ ์ข‹์€ ์ถ”์ธก์€ ์ข…์†์„ฑ์˜ ์ผ๋ถ€ ์กฐํ•ฉ์ด @types/node ์˜ ๋‘ ๊ฐ€์ง€ ๋‹ค๋ฅธ ๋ฒ„์ „์„ ๋™์‹œ์— ์ œ๊ณตํ–ˆ์œผ๋ฉฐ ์–ด๋–ป๊ฒŒ ๋“  ์‹œ์Šคํ…œ์— ๋ Œ์น˜๋ฅผ ๋˜์ง€๊ณ  ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๋Ÿฐ ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ๋ฐœ๋ช…ํ•˜๋ ค๊ณ  ์‹œ๋„ ํ•  ๊ฒƒ์ด์ง€๋งŒ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์ด๊ฒƒ์ด ์ผ์–ด๋‚˜๋Š” ์ •ํ™•ํ•œ ํ™˜๊ฒฝ์„ ์ œ๊ณต ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ํ™•์‹คํžˆ ์ˆ˜์ • ์†๋„๋ฅผ ๋†’์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.


์—…๋ฐ์ดํŠธ : ์žฌํ˜„์„ ์•Œ์•„ ๋ƒˆ์Šต๋‹ˆ๋‹ค. ๋ฌด์‹œ.

์ด๊ฒƒ์€ RC์— ํฌํ•จ๋˜์ง€๋Š” ์•Š์ง€๋งŒ ์•ผ๊ฐ„ ๋ฐ 3.6์˜ ์ ์ ˆํ•œ ๋ฆด๋ฆฌ์Šค๋กœ ๋งŒ๋“ค์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

์ €๋Š” Mac๊ณผ Ubuntu๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. Mac์€ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. Ubuntu์—๋Š”์ด ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
Nightly๋กœ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

JavaScript ๋ฐ TypeScript Nightly ๊ฐ€ ์ž‘๋™ํ•˜์ง€

  1. VS Code์—์„œ JavaScript ๋˜๋Š” TypeScript ํŒŒ์ผ์„ ์—ฝ๋‹ˆ ๋‹ค.
  2. VS Code ๋ช…๋ น ํŒ”๋ ˆํŠธ์—์„œ TypeScript : Select TypeScript ๋ฒ„์ „ ๋ช…๋ น์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  3. VS Code ๋ฒ„์ „ ์‚ฌ์šฉ์ด ์„ ํƒ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

์Šคํƒ€์ผ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์„ค์น˜ํ•˜๊ณ  ๋‹ค์‹œ์žˆ์„ ๋•Œ๊นŒ์ง€์ด ๋ฌธ์ œ์—†์ด ํ–‰๋ณตํ•˜๊ฒŒ ์‚ด์•˜์Šต๋‹ˆ๋‹ค.

@tlaak ์–ด๋–ค ๋ฒ„์ „์˜ TypeScript๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ์ด๊ฒƒ์„ 3.6์—์„œ ๊ณ ์ณค๋‹ค ๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์ด์ „ ๋ฒ„์ „์˜ TypeScript๋Š” ๊ณ„์†ํ•ด์„œ์ด ๋™์ž‘์„ ๊ณ„์† ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

@andrewbranch ๋‚˜๋Š” create-react-app์— ์˜ํ•ด ์„ค์ •๋œ ์ด์ „ 3.5.x ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์–ด์จŒ๋“  ์ €๋Š” ๋” ์ด์ƒ ํ”„๋กœ์ ํŠธ์— ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ ํ™•์ธํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

@andrewbranch ๋ฐฉ๊ธˆ ๋‚ด ํ”„๋กœ์ ํŠธ์—์„œ์ด ๋งค์šฐ ์„ฑ๊ฐ€์‹  ๋ฌธ์ œ๋ฅผ ๊ฒช๋Š” ๊ธฐ์จ์„ ๋ˆ„๋ ธ๊ณ  TypeScript๋ฅผ 3.5.x์—์„œ 3.6์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•œ ํ›„ ์ˆ˜์ •๋˜์—ˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค !! ๐ŸŽ‰์ด ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์„์œ„ํ•œ ์ฐธ๊ณ  : VS Code์˜ ์˜ค๋ฅธ์ชฝ ํ•˜๋‹จ์—์žˆ๋Š” Typescript ๋ฒ„์ „๋„ 3.6.x๋กœ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

๋ฒ„์ „ 3.5.x๊ฐ€ ์žˆ๊ณ  3.6.2์—์„œ๋Š” ๋” ์ด์ƒ ์ฝ˜์†” ์ž๋™ ๊ฐ€์ ธ ์˜ค๊ธฐ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
3.6.2๊ฐ€ vscode ๊ธฐ๋ณธ TS ๋ฒ„์ „ ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

image

vscode๊ฐ€ ์ž‘์—… ๊ณต๊ฐ„ / ํ”„๋กœ์ ํŠธ TS ๋ฒ„์ „์ด ์•„๋‹Œ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
image

import console = require ( 'console')์ด ์—ฐ๊ฒฐ๋˜๋Š” ๊ฒฝ๋กœ๋ฅผ ๋”ฐ๋ผ ๊ฐ€๋ฉด ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด stackoverflow์— ๋Œ€ํ•œ ํฌ๋ ˆ๋”ง.

@Zlass ์ด๊ฒƒ์€ ์ƒ๋ช…์˜ ์€์ธ์ž…๋‹ˆ๋‹ค ๐Ÿ™

์—ฌ์ „ํžˆ ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ๊ฒฝ์šฐ : stackoverflow์˜ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰