当前位置: 首页 > 面试题库 >

Webpack和Typescript图像导入

松涵容
2023-03-14
问题内容

我正在开发一个 React 应用程序并使用 WebpackTypescript
。我想在<img/>标签之一中使用图片。但是,我没有找到访问图像文件的正确方法。

webpack.config.js

 ...
 module: {
        rules: [
            ...
            {
                test: /\.(png|jpe?g|svg)$/,
                loader: 'file-loader',
                options: {
                    name: 'assets/[name].[ext]',
                }
            }
        ]

app.tsx

...
render() {
    return <img src='/assets/logo-large.png' alt="logo"/>
}

运行应用程序时,assets/logo-large.png找不到资源。


问题答案:

或者,在您的custom_typings文件夹中(如果有的话),可以添加一个新import-png.d.ts文件:

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

因此,您可以使用以下命令导入图像:

import myImg from 'img/myImg.png';

另外,正如@ mario-petrovic所报告的那样,有时您需要使用以下不同的导出选项(export
=语法)。请参阅此处了解两种方法之间的区别:

declare module "*.png" {
  const value: any;
  export = value;
}

在这种情况下,您可能需要将图像导入为:

import * as myImg from 'img/myImg.png';


 类似资料:
  • 问题内容: 因此,这是我当前通过ES6导入Webpack中的图像和图标的工作流程: 这变得很快。这就是我想要的: 我觉得必须有某种方法可以动态地从特定目录中导入所有文件(不带扩展名),然后根据需要使用这些文件。 任何人都看过此事,或者对最佳解决方案有任何想法? 更新: 使用选择的答案,我能够做到这一点: 问题答案: 我觉得必须有某种方法可以动态地从特定目录中导入所有文件(不带扩展名),然后根据需要

  • create-ts-lib Quick Start You can execute the create-ts-lib CLI using npx or by installing it globally with npm i -g create-ts-lib. # Use NPX or npm install -g create-ts-lib to install it as a global

  • Webpack 5 boilerplate Webpack 5 boilerplate with support of most common loaders and modules: babel typescript (using ForkTsCheckerWebpack ) sass, less, css modules with automatic typescript declaratio

  • 我有一个nginx的dockerfile。 我有一个docker-compose.yml文件。 运行后 docker合成 它从名为“web”的dockerfile创建图像,并下载redis图像。它还创建了名为“web\u web1”的图像和当我检查 docker ps nginx和redis服务都在运行。我的问题是,如果我将新创建的映像提交到另一个映像并导出容器并导入到另一个环境,在执行docke

  • 我正在尝试通过WebPack用TypeScript构建一个测试项目。在index.ts中只导入了index.ts文件和base.less(或base.css)文件,但它在css-loader上出现错误而失败。没有导入更少(CSS)文件的.ts文件全部工作良好。 我有另一个仅使用JS的大项目(没有TypeScript),它可以使用相同的webpack.config文件(babel而不是ts加载器)。

  • 我在img标记中使用.img响应类。图像非常小(42K),但当加载页面时,图像显示几秒钟相当大,直到缩小到适合容纳它的元素的大小为止。 我应该如何使用bootstrap处理响应性元素?