在TypeScript中使用文件加载器

oaxa6hgo  于 2023-05-19  发布在  TypeScript
关注(0)|答案(1)|浏览(115)

我用esbuild为.png文件设置了一个文件加载器。
我在index.d.ts中有这样一个例子:

declare module "*.png" {
  const value: string;
  export default value;
}

但这里的问题是,我的编辑器不会警告我任何不存在的导入。

import existing from "assets/existing.png" // no error
import not_existing from "assets/not_existing.png" // no error

只有在我用esbuild构建它们时才会出错。
有更好的方法吗?

n53p2ov0

n53p2ov01#

当在声明的说明符*.png中使用星号/globstar(*)时,它将模式匹配所有以.png结尾的说明符。如果要将可识别的导入说明符限制为某些文件名,则可以仅声明这些说明符,例如:

declare const _pngBase64: string;
declare module "assets/existing.png" { export default _pngBase64; }
declare module "assets/existing2.png" { export default _pngBase64; }
// etc.

相关问题