Typescript - 如何将 png 文件导入到我的 typescript 文件中?

Typescript - How can I import png files into my typescript file?

我使用 Parcel 编译器构建了自己的 typescript 项目,并在内置服务器上获得了所有内容 运行。我实现了 pixi.js 并想将 .png 文件导入到我的 .ts 文件中。但是当我尝试导入时它说找不到模块,即使两个文件都在同一个文件夹中?我错过了什么?

我尝试执行以下操作

npm install @types/node --save-dev

tsconfig.json(位于我的根文件夹中)

{
  "compilerOptions": {
    "types": ["node"],
    "typeRoots": ["node_modules/@types"]
  }
}

据我从您给出的示例中猜测,这与 Parcel 没有任何关系。

Parcel v1 将在内部调用 tsc 并且编译器将简单地针对 .png 等未知文件扩展名发出错误,因为纯 TS 项目将只能 import 代码文件(.js.ts.tsx.jsx.json) 不涉及像 Parcel 或 Webpack 这样的模块打包器。

Bundlers 允许 import 其他文件类型,方法是将它们转换为可在您的项目中使用的有效模块(由 Webpack 中的加载程序实现,Parcel 确实更透明地处理它)。

为了 "convince" 编译器,这些类型的导入很好,并且让模块已知,可以使用 wildcard module declarations。例如,要编译 .png 文件导入,您可以使用以下声明创建文件 globals.d.ts 或类似文件:

declare module '*.png';

这应该足以满足编译器的要求(here 是一个特定于 Parcel 的相关问题)。

希望对您有帮助。