有一次(也可能不止一次🙄),使用TypeScript
开发的项目,需要导入一张jpg
图片。(瞧瞧,需求来了)
要怎么做呢?还能怎样,那就导入呗,于是乎在一个ts
文件中,⌨如下代码:
import nopic from '../images/news_nopic.jpg';
但是很不幸,它毫不留情、华丽丽地报错了🤷♂️
找不到模块.png提示已经很清楚了,用import
语句的目的,是要导入模块,你这一个图片地址,这是个什么玩意(编译器:我又不傻💢)。
到这里就要欺骗一下了😈,我们只要告诉编译器,我这个图片就是个模块不就行了。
那怎么告诉呢?用.d.ts
文件啊。
我们这样做,在项目的根目录下新建一个images.d.ts
文件:
在images.d.ts
文件中声明图片类(后缀是.png
、.jpg
、.gif
......)的文件(也可以声明其他类型)就是模块,代码如下:
declare module "*.svg";
declare module "*.png";
declare module "*.jpg";
declare module "*.jpeg";
declare module "*.gif";
declare module "*.bmp";
declare module "*.tiff";
水到渠成,💉🐔🅱🐮🍺,编译通过:
编译通过.png完美💯
网友评论