Definitelytyped: [@ types / terser-webpack-plugin] Suporte para webpack 5

Criado em 15 out. 2020  ·  4Comentários  ·  Fonte: DefinitelyTyped/DefinitelyTyped

@ types / terser-webpack-plugin não suporta webpack 5 tipos que agora são gerados pelo próprio webpack.

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] Tentei usar o pacote @types/terser-webpack-plugin e tive problemas.
  • [x] Tentei usar a versão estável mais recente do tsc. https://www.npmjs.com/package/typescript
  • [x] [Mencionar] (https://github.com/blog/821-mention-somebody-they-re-notified) os autores (ver Definitions by: em index.d.ts ) para que eles possam responder.

    • Autores: @Danscho , @peterblazejewicz

Comentários muito úteis

Eu tenho outra mensagem de erro aparecendo no arquivo de configuração do webpack, ao usar terser-webpack-plugin 5.0.0 com webpack 5:

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)

Alguém mais tendo esse problema?

Todos 4 comentários

@peterblazejewicz já criou uma solicitação pull.
Consulte: # 48794.
Isso deve resolver seu problema.

Eu tenho outra mensagem de erro aparecendo no arquivo de configuração do webpack, ao usar terser-webpack-plugin 5.0.0 com webpack 5:

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)

Alguém mais tendo esse problema?

Pelo que posso dizer, o problema é que a versão mais recente de @types/terser-webpack-plugin , mesmo depois de # 48794, ainda especifica @types/webpack@* como dependência, que resolve para [email protected] . Parece que essa dependência é de alguma forma adicionada implicitamente por @DefinitelyTyped , pois não consigo encontrá-la em package.json . Talvez tenhamos que adicionar webpack@5 como uma dependência para evitar isso?

webpack@5 também não exporta Plugin mais, mas por exemplo WebpackPluginInstance .

@buschtoens
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/48857
houve o mesmo problema com o webpack 5.

Esta página foi útil?
0 / 5 - 0 avaliações