Definitelytyped: [@types/terser-webpack-plugin] ์›นํŒฉ 5 ์ง€์›

์— ๋งŒ๋“  2020๋…„ 10์›” 15์ผ  ยท  4์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: DefinitelyTyped/DefinitelyTyped

@types/terser-webpack-plugin์€ ์ด์ œ webpack ์ž์ฒด์—์„œ ์ƒ์„ฑ๋˜๋Š” webpack 5 ์œ ํ˜•์„ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

node_modules/@types/terser-webpack-plugin/index.d.ts:7:10 - error TS2305: Module '"../../webpack/types"' has no exported member 'Plugin'.

7 import { Plugin } from 'webpack';
           ~~~~~~
  • [x] @types/terser-webpack-plugin ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์•˜๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
  • [x] ์•ˆ์ •์ ์ธ ์ตœ์‹  ๋ฒ„์ „์˜ tsc๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. https://www.npmjs.com/package/typescript
  • [x] [๋ฉ˜์…˜](https://github.com/blog/821-mention-somebody-they-re-notified) ์ž‘์„ฑ์ž( Definitions by: in index.d.ts )๋ฅผ ํ†ตํ•ด ๋Œ€๋‹ตํ•˜๋‹ค.

    • ์ €์ž: @Danscho , @peterblazejewicz

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

webpack 5์™€ ํ•จ๊ป˜ terser-webpack-plugin 5.0.0์„ ์‚ฌ์šฉํ•  ๋•Œ webpack ๊ตฌ์„ฑ ํŒŒ์ผ์— ๋˜ ๋‹ค๋ฅธ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

Type 'TerserPlugin' is not assignable to type '"..." | WebpackPluginInstance | ((this: Compiler, compiler: Compiler) => void)'.
  Type 'TerserPlugin' is not assignable to type '(this: Compiler, compiler: Compiler) => void'.
    Type 'TerserPlugin' provides no match for the signature '(this: Compiler, compiler: Compiler): void'.ts(2322)

์ด ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

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

@peterblazejewicz๊ฐ€ ์ด๋ฏธ pull ์š”์ฒญ์„ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.
์ฐธ์กฐ: #48794.
์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

webpack 5์™€ ํ•จ๊ป˜ terser-webpack-plugin 5.0.0์„ ์‚ฌ์šฉํ•  ๋•Œ webpack ๊ตฌ์„ฑ ํŒŒ์ผ์— ๋˜ ๋‹ค๋ฅธ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

Type 'TerserPlugin' is not assignable to type '"..." | WebpackPluginInstance | ((this: Compiler, compiler: Compiler) => void)'.
  Type 'TerserPlugin' is not assignable to type '(this: Compiler, compiler: Compiler) => void'.
    Type 'TerserPlugin' provides no match for the signature '(this: Compiler, compiler: Compiler): void'.ts(2322)

์ด ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚ด๊ฐ€์ด ๋ฌธ์ œ๋ฅผ ๋งํ•  ์ˆ˜์žˆ๋Š” ๊ฒƒ์€ ์ตœ์‹  ๋ฒ„์ „์ด๋‹ค์—์„œ @types/terser-webpack-plugin ํ›„์—๋„ # 48794๋Š” ์—ฌ์ „ํžˆ ์ง€์ • @types/webpack@* ์˜์กด๋ฟ๋งŒํ•˜๋Š”๋กœ ํ™•์ธ [email protected] . ์ด ์ข…์†์„ฑ์€ package.json ์—์„œ ์ฐพ์„ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— @DefinitelyTyped ์— ์˜ํ•ด ์•”์‹œ์ ์œผ๋กœ ์ถ”๊ฐ€๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ข…์†์„ฑ์œผ๋กœ webpack@5 ๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

webpack@5 ๋„ ๋” ์ด์ƒ Plugin ๋‚ด๋ณด๋‚ด์ง€ ์•Š์ง€๋งŒ ์˜ˆ๋ฅผ ๋“ค์–ด WebpackPluginInstance ์ž…๋‹ˆ๋‹ค.

@buschtoens
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/48857
webpack 5์—์„œ๋„ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

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