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

vue3 vite 如何修改图片引用地址?

宰鸿博
2023-11-07

页面代码中引用本地图片:

<img src="../assets/image/login/icon_login.png" />

页面中的地址:
image.png

我想将
/src/assets/image/login/icon_login.png 变成
http://localhost:3000/src/assets/image/login/icon_login.png

应该如何配置?

我配置了vite里的base 没有效果

export default defineConfig(({ command, mode }) => {  return {    base: mode === 'production' ? '/MF_demo/' : 'http://localhost:3000',}})

共有1个答案

常波
2023-11-07

你试图修改图片的引用地址,从相对路径变为绝对路径。在 Vue3 和 Vite 的项目中,通常在 public 文件夹中放置所有静态资源,例如图片。这些资源可以通过 / 直接访问。

首先,你需要确保图片文件 icon_login.png 确实存在于你的项目的 public 文件夹中。如果文件确实在那里,那么你可以通过以下方式引用图片:

<img src="/icon_login.png" />

注意,这里我们不需要添加任何前缀,如 http://localhost:3000,因为 Vite 会自动根据配置的 base 来设置这些资源的基础路径。

然而,你提到你的配置没有效果。这可能是因为你的配置方式不正确。在 Vite 的配置文件中,base 选项应该设置为一个字符串,而不是一个数组。另外,如果你的 public 文件夹位于项目的根目录下,你不需要添加任何前缀。

以下是一个配置示例:

export default defineConfig({  base: '/MF_demo/', // 这将设置为你的项目的 base 路径})

然后你可以在你的 HTML 文件中这样引用图片:

<img src="/assets/image/login/icon_login.png" />

注意,这里我们仍然使用的是相对路径,但这是因为我们已经设置了正确的 base 路径,Vite 会自动将这个相对路径转换为绝对路径。

 类似资料:
  • 我有一个映射,我正在遍历它,并使用循环修改映射的值。我想知道是否有一种方法可以使用Java8流来实现。 这是我的代码: 基本上,我想流化地图值,设置值,并将其作为新地图。

  • 我正在尝试修改以下项目,因为有一个我想做的自定义:https://github.com/swagger2markup/swagger2markup 反过来,我想在以下项目中使用修改后的二进制文件:https://github.com/swagger2markup/swagger2markup-gradle-project-template 总的来说,我认为我需要做以下几个步骤: null 然后我在

  • 单击地图信息选项卡,可以查看当前地图的信息。单击地图名称旁边的 笔状图标,可以修改当前地图的信息。

  • 如果想要定义安装左侧的图片,请在 ; MUI 预定义常量 !define MUI_ABORTWARNING !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico" !define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico

  • /aaaaa/static/img/zhexian.41eafbf5.png 转 这种格式 data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANIAAABjCAYAAAGZCG4EAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQA

  • 我在docker中创建了一个图像。安装了Ubuntu、JDK和其他几个库。然后我退出了容器并进行了这样的提交 我又启动了容器 这次我安装了gradle和其他几个库。然后退出容器,再次提交。 每次我执行提交操作时,都会创建一个新图像,并保留带有存储库和标记的旧图像。按照这个工作流程,我很快就会用完空间。这是使用docker的正确方法吗?如何确保所有这些图像都消失。 我正在windows 10上使用d