Webpack 提供了一个 TypeScript 接口来实现一个加载器:
import { loader } from "webpack";
namespace loader {
interface Loader extends Function {
(this: LoaderContext, source: string | Buffer, sourceMap?: RawSourceMap): string | Buffer | void | undefined;
pitch?(remainingRequest: string, precedingRequest: string, data: any): any;
raw?: boolean;
}
}
所以当我实现它时
const sfcLoader: loader.Loader = function(source: string) {
/* ... */
};
现在我正在尝试创建一个接口,即该接口但返回一个 Promise:
const sfcLoader /* : loader.Loader */ = async function(source: string) {
/* await ... */
};
注意async
当然我不想复制粘贴那个界面。有没有办法可以扩展(或其他)和修改 webpack 的界面?