vue项目打包问题

vue项目配置接口地址

1.设置不同的接口地址

先找到以下文件

/config/dev.env.js

/config/prod.env.js

可以看到dev.env.js里面内容如下

这是生产环境的参数配置,然后我们可以再上面文件加入一行代码,如下:

这就是本地测试环境请求后台接口的域名

然后找到prod.env.js文件,如下:

我们加入一行代码,如下:

这是我们上传服务器以后,请求后台接口的域名

2.在代码中调用设置好的参数,

比如我在本项目中重新封装axios(api文件在/src/api/index.js中),将配置好的接口地址作为baseURL拼接到接口路径中,应用参数部分如下:

 

 

最后重新启动项目就可以了,当npm run dev的时候就运行在生产环境,当npm run build的时候就是正式的线上环境.

Vue axios设置访问基础路径

在main.js 做如下配置:

import axios from 'axios'axios.defaults.baseURL = 'http://10.202.42.24:8080/sf-cloud-web'Vue.prototype.axios = axios将axios配置到Vue原型中,使用方法为:this.axios.get('/test/1').then(function (response) {})

可能会遇到报错:

Cannot read property 'protocol' of undefined

这是因为axios不能使用 Vue.use(axios) 方式引用,需要使用原型方式引入

 

跨域:

客户端请求服务端的数据是存在跨域问题,在使用axios的时候会发现没有jsonp的请求方式,所以如果要使用axios直接进行跨域访问是不可能的,这样就需要配置代理了.

 

 

打包后资源相对引用路径的和背景图片路径问题

vue项目中若要使用相对路径来获得相应静态资源,需要修改以下内容来确保项目打包后能正常运行。

1、修改config => index.js => build => assetsPublicPath 中的'/'成为'./'

 

2、在build => util.js 里找到ExtractTextPlugin.extract增加一行:publicPath: '../../',主要解决背景图片路径的问题。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值