前端VUE项目-day1

1、跨域

列子:1、我在同一台电脑上启动vue项目,地址http://localhost:1025/,后端启动flask项目,地址:http://localhost:5000,端口不一样,所以全端发起请求的时候受到同源策略的限制

直接在地址栏输入URL是浏览器发起的简单请求,不受同源策略限制。而通过JavaScript发起的XMLHttpRequest或Fetch API请求则会受到同源策略的限制

同源判定:协议(http/https)、域名(或IP)和端口三者完全相同才视为同源,只要有其中一个不同即跨域

解决:1、后端处理

2、前端处理,在vue.config.js中

html 复制代码
module.exports = {
  devServer: {
    proxy: {
      '/api': {
        target: 'http://127.0.0.1:5000',
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }
    }
  }
}

然后前端:

复制代码
axios.get('/api/home/getWebInfo')

这样写,当前端直接发起请求的时候会自动带上地址,实际请求为http://localhost:1025/api/home/getWebInfo,由于前端配置文件配置过代理,所以,包含/api部分被替换成target里面的内容,实际最终发出去的请求为http://localhost:5000/home/getWebInfo

2、vue2中使用el-image组件,为什么设置src="/src/assets/image/sara_home_bg.webp"加载不出图片,确定的是图片路径没问题

1. Webpack 静态资源处理问题

Vue CLI 项目使用 Webpack 打包,/src/assets/ 中的资源会被 Webpack 处理。直接使用绝对路径 /src/... 是无效的,因为:

  • 开发阶段:文件路径可能被 Webpack 的 dev-server 代理。

  • 生产阶段:文件会被打包到 dist/ 目录,路径会变化。

使用

html 复制代码
<el-image :src="require('@/assets/image/sara_home_bg.webp')"></el-image>

2. 路径别名问题

Vue CLI 默认配置了 @ 作为 /src 的别名,建议使用别名确保路径正确:

html 复制代码
<el-image :src="require('@/assets/image/sara_home_bg.webp')"></el-image>

3. 图片未放入 public/ 目录

如果图片是纯静态资源(不经过 Webpack 处理),可以将其放在 public/ 目录,然后直接引用:

html 复制代码
<el-image src="/image/sara_home_bg.webp"></el-image>
  • 需要将图片文件放到 public/image/sara_home_bg.webp
相关推荐
OrangeForce2 分钟前
Monknow 书签导出工具:从本地存储提取数据并转为标准 HTML 书签
javascript·chrome·python·edge·html·firefox
mCell13 分钟前
JavaScript:从事件循环到手写 Promise
javascript·面试·浏览器
芯芯点灯1 小时前
gd32f303烧录提示Flash Timeout. Reset the Target and try it again.;
开发语言·前端·javascript
前端若水1 小时前
自定义消息组件:图片、文件附件与图表
前端·人工智能·react.js·typescript
2601_958492551 小时前
7 Best WordPress Tools to Help Your News Site Actually Make Money
前端·word
放下华子我只抽RuiKe51 小时前
React 从入门到生产(七):性能优化实战
前端·javascript·人工智能·react.js·性能优化·前端框架·github
糯米团子7491 小时前
vue知识点复习
前端·vue.js
范同学~1 小时前
多个表单如何用element ui 校验
javascript·vue.js·ui
晚烛1 小时前
CANN 日志系统:调试与性能分析的日志艺术
前端·chrome·数据挖掘
FlyWIHTSKY1 小时前
Next中引入 Ant Design (antd)的配置
开发语言·前端·javascript