webpack+vuecli打包生成资源相对引用路径与背景图片的正确引用

资源相对引用路径

问题描述

一般情况下,通过webpack+vuecli默认打包的css、js等资源,路径都是绝对的。

但当部署到带有文件夹的项目中,这种绝对路径就会出现问题,因为把配置的static文件夹当成了根路径,那么要解决这种问题,就得引用相对路径。

解决办法

打开webpack.prod.conf.js

找到output增加 publicPath: ‘./‘, 即可,如图。

那么这样后,资源的引用路径就正确了。

当然在config文件夹下的index.js中修改 assetsPublicPath: ‘./‘同样也可以达到资源的相对引用。

背景图片的引用问题

上面虽然解决了资源路径的引用问题,但是资源里面的背景图片,不像index.html中加载资源一样,通过./static/js/app.js引用可以正常加载,图片资源是通过css加载的,如 background: url("../../assets/images/logo-index.png") no-repeat;被相对打包后变成了url(static/img/logo-index.2f00bf2.png) no-repeat所以我们要保留css引用图片的正常路径,即:

url(../../static/img/logo-index.2f00bf2.png) no-repeat

那么就需要修改build文件夹下的utils.js代码,如图所示:

添加如图所示的一行代码,这样不论是字体还是图片的引用问题都能解决。

时间: 2024-10-22 17:56:03

webpack+vuecli打包生成资源相对引用路径与背景图片的正确引用的相关文章

[Vuejs] webpack+vue-cli打包如何引用相对路径

默认情况下通过webpack+vuec-li打包的css.js等资源,路径都是绝对的,即static在根目录下,假如部署到带有文件夹目录的项目中,资源路径就会出错,如何解决. 1.修改资源引用相对路径,打开build/webpack.prod.conf.js 找到27行  output:增加publicPath:'./',如图: 当然在config文件夹下的index.js中修改  assetsPublicPath:'./' 同样也可以达到资源的相对引用. 2.修改css资源引用的相对路径,打开

webpack 打包生成的index 路径引用不对

webpack 在打包时在访问打包里面的index时,出现路径错误 修改方法为 解决方法:在config下面的index.js把 assetsPublicPath: '/', 修改为: assetsPublicPath: './', 原文地址:https://www.cnblogs.com/smart-girl/p/11327295.html

vue -- 打包资源正确引用及背景图引入

一般情况下,通过webpack+vuecli默认打包的css.js等资源,路径都是绝对的. 但当部署到带有文件夹的项目中,这种绝对路径就会出现问题,因为把配置的static文件夹当成了根路径,那么要解决这种问题,就得引用相对路径. 解决办法 打开webpack.prod.conf.js 找到output:增加 publicPath: './', 即可,如图: 也可在config文件夹下的index.js中修改 assetsPublicPath: './'同样也可以达到资源的相对引用. 背景图引入

【笔记】vue-cli 打包后路径问题出错的解决方法

几天之前打包自己的vue 项目上传到远程服务器上面 但是遇到了如下几个问题: 1. 线上浏览页面时是空白页面 2. 打包后资源文件(js, css 文件)引用的路径不正确 3. 开发环境中使用到的如:组件内部css 的背景图路径,通过 computed 属性计算返回的图片路径不正确问题 于是在网上参考了两篇文章便逐一解决了: https://www.cnblogs.com/moqiutao/p/7496718.html http://blog.csdn.net/obkoro1/article/d

webpack+vue-cli项目打包技巧

1.设置config文件夹index.js中productionSourceMap的值为false,也就是设置webpack配置中devtool为false,打包后文件体积可以减少百分之八十!!!!!!! 2.如何实现打包文件中js.css等的版本控制? 设置build文件夹下的webpack.prod.conf.js中HtmlWebpackPlugin插件配置参数添加hash: true,即会使打包生成的index.html中的js和css路径带有?+随机字符串

vue-cli项目打包出现空白页和路径错误问题

vue-cli项目打包: 1. 命令行输入:npm  run  build 打包出来后项目中就会多了一个文件夹dist,这就是我们打包过后的项目. 第一个问题,文件引用路径.我们直接运行打包后的文件夹中的index.html文件,会看到网页一片空白,f12调试,全是css,js路径引用错误的问题. 解决:到config文件夹中打开index.js文件. 文件里面有两个assetsPublicPath属性,更改第一个,也就是更改build里面的assetsPublicPath属性: assetsP

vue-cli 打包输出到dist文件夹以后,丢入服务器,资源自动https加载的问题

把这个meta标签注释 <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests"> vue-cli 打包输出到dist文件夹以后,丢入服务器,资源自动https加载问题 原文地址:https://www.cnblogs.com/geekjsp/p/12147624.html

express整合webpack的打包文件dist

对于我来说,第一次接触前后端整合问题的小白,刚开始是一脸懵逼,这个问题整整坑了我一个晚上加一个早上,现在写出来总结: 前端开发:vue-cli+webpack: 后台开发:nodejs框架express: 前端开发之后,使用localhost能正确访问vue-cli自带的服务器. 而在后台方面,一开始我是直接在expres的views和public上开发前端页面,因此在一些配置方面都是上个项目的,现在整合新项目,让我有点方. 过程: 1.进入前端目录,npm run build 命令直接将前端项

npm webpack vue-cli

Node.js   npm 什么是Node.js  以及npm 简单的来说 Node.js 就是运行在服务端的JavaScript,基于Chrome V8 引擎的. npm 是Node.js 的包管理工具. npm的安装和更新 Node.js下载安装   Node.js 官网下载安装.npm自带的包管理工具. 查看安装版本信息: --  node -v  查看Node.js 版本信息 --  npm -v  查看npm版本信息 更新npm到指定版本: --  npm install [email