当前位置: 首页 > 知识库问答 >
问题:

如何在网页包配置中使用uuu webpack u public u path uuu变量?

后化
2023-03-14

我目前正在使用React、TypeScript和Webpack开发一个网络应用程序。我希望Webpack根据我只知道运行时而不是编译时的子域生成图像URL。

我在WebPacks的留档上看到http://webpack.github.io/docs/configuration.html#output-publicpath

注意:如果在编译时输出文件的最终公共路径未知,则可以将其保留为空,并在运行时在入口点文件中动态设置。如果您在编译时不知道publicPath,可以忽略它,并在入口点上设置webpack_public_path。

webpack_public_path

//您的应用程序条目的其余部分

但我不能让它工作。

我已经在我的应用程序入口点中设置了webpack\u public\u path变量。但是我如何在我的网页配置中使用它的值呢?我需要在这里使用它:

"模块":{"规则": [ { "测试": /.(png|jpg|gif)(\?[\s\S])?$/,"loaders":[url?限制=8192

我需要做这样的事情:

“加载器”:['url?限制=8192

我已经设法让它工作了。因此,在我的切入点文件(start.tsx)中,我在导入之前声明de__webpack_public_path__free var,并在导入之后分配其值。

/// <reference path="./definitions/definitions.d.ts" />
declare let __webpack_public_path__;

import './styles/main.scss';

/* tslint:disable:no-unused-variable */
import * as React from 'react';
/* tslint:enable:no-unused-variable */
import * as ReactDOM from 'react-dom';
import * as Redux from 'redux';
import { Root } from './components/root';

__webpack_public_path__ = `/xxxx/dist/`;

现在,当我有一个img标记时,使用公共路径:

<img src={require('../../images/logo.png')} />

变成:

<img src='/xxxx/dist/images/125665qsd64134fqsf.png')} />

共有2个答案

洪安顺
2023-03-14

不是一个大的网页包专家,但我不确定你使用的加载程序在正确的方式。url加载器帮助您加载代码中所需/导入的文件数据。

因此,如果在你的入口点写下如下内容:

var imageData = require("path/to/my/file/file.png");

Webpack将看到您试图导入不同于. js文件的内容,然后将在您配置的加载器列表中搜索,以查看它是否可以使用任何加载器来加载该资源。

由于您已经设置了一个加载程序,该加载程序具有与所需资源类型(extension.png)匹配的test属性,因此它将使用该配置的加载程序(url加载程序)尝试将该资源加载到包中。

您还可以通过在require路径中预加加载器(以及一些查询字符串,如果您愿意)来告诉webpack需要使用什么加载器:

var imageData = require("url-loader?mimetype=image/png!path/to/my/file/file.png");

此外,我甚至不确定是否有一个名称参数可以传递给url加载程序。

刘承运
2023-03-14

以下是我生成的超文本标记语言的基本设置:

<script>
    window.resourceBaseUrl = 'server-generated-path';
</script>
<script src="path-to-bundle" charset="utf-8"></script>

我的主要入口点脚本:

__webpack_public_path__ = window.resourceBaseUrl;
 类似资料:
  • 我想在网页顶部设置一个渐变色的背景,css可以实现吗? 如图所示 css3可以实现吗?

  • 本文向大家介绍如何在网页中使用图片?,包括了如何在网页中使用图片?的使用技巧和注意事项,需要的朋友参考一下 要在网页上使用图像,请使用<img>标签。标签允许您添加图像源,高度,宽度,高度等。高度是替代文本属性,即当图像无法加载时可见的文本。 以下是属性- 属性 描述 Alt键 图片的备用文字 高度 图片的高度 Ismap 该图像作为服务器端图像映射 朗德斯克 图像详细说明的URL Src 图片的

  • 问题内容: 我想根据用户选择的值导入一些软件包。 默认值为: 如果用户选择,则应为: 在PHP中,我可以使用变量variable来做到这一点: 如何在Python中执行此操作? 问题答案: Python没有与PHP的“变量变量”直接等效的功能。要获取“变量变量”的值(或任何其他表达式的值),可以使用该函数。 但是,这不能在语句中使用。 可以使用该函数通过变量导入。 相当于

  • 我用我的软件包做了“npm运行构建”。json。我听到了这个消息。如何将@与网页包一起使用? 错误/节点\模块/babel加载程序/lib/节点_模块/vue加载程序/lib/selector。js?类型=脚本 但是在"npm run dev"中,它成功了。我的package.json: 用这个包裹。json,它成功了: 2月6日。添加了我的webpack.config.js:

  • 这是我在INNO设置中的三个示例部分。我想在INI部分使用。我该怎么做?

  • 问题内容: 我正在使用Go 1.9.2创建一个应用,并且试图在构建过程中使用选项向其添加版本字符串变量。 我已经通过使用:在包中设置了一个变量,但是我真正需要的是在包中而不是在其中设置变量。这可能吗? 这是我的构建命令: 问题答案: 引用命令链接文档: 因此,它可以用于任何包装,而不仅仅是包装。但是您必须指定完整的 导入路径 ,而不仅仅是软件包名称。 例如,如果您的软件包位于,则使用以下命令: