vue-cli3项目出现跨域的解决方法

 

使用vue-cli3搭建脚手架时,没有以前的webpack配置文件,一些配置列如跨域,alias无法配置,这时候在项目目录下新建一个vue.config​.js即可。

具体配置​如下

解决跨域配置

devServer: {
        proxy: {
            '/api': {
                // target: "http://10.19.193.135:8870/ssyth",
                target: 'http://www.okzyw.com',
                changeOrigin: true, // 是否跨域
                pathRewrite: {
                    '^/api': ''
                }
            },
            '/foo': {
                // target: "http://10.19.193.135:8870/ssyth",
                target: 'https://api.apiopen.top',
                changeOrigin: true, // 是否跨域
                pathRewrite: {
                    '^/foo': ''
                }
            },
            '/db': {
                // target: "http://10.19.193.135:8870/ssyth",
                target: 'https://movie.douban.com/',
                changeOrigin: true, // 是否跨域
                pathRewrite: {
                    '^/db': ''
                }
            }
        },
    },

解决alias配置 

 chainWebpack: config => {
        config.resolve.alias
            .set('@', resolve('src'))
            .set('cn', resolve('src/components/common'))
            .set('mioJs', resolve('src/common/js'))
            .set('json', resolve('src/static/mockJson'))
    }

 如果在webstorm中alias配置后无法快速定位文件,可新建一个alias.config.js配置文件

内容如下

// 此文件用于 webstorm 快速定位文件
const path = require('path')

function resolve (dir) {
    return path.join(__dirname, dir)
}

module.exports = {
    resolve: {
        alias: {
            '@': resolve('src'),
            cn: resolve('src/components/common'),
            mioJs: resolve('src/common/js'),
            json: resolve('src/static/mockJson')
        }
    }
}

完整的vue.config.js 

const path = require('path')// 配置uni-router的路由页面const TransformPages = require('uni-read-pages')// const uni-simple-router = require('uni-read-pages')const tfPages = new TransformPages({    includes: ['path', 'name', 'meta']})function resolve (dir) {    return path.join(__dirname, dir)}module.exports = {    transpileDependencies: ['uni-simple-router'],    configureWebpack: {        plugins: [            new tfPages.webpack.DefinePlugin({ // 配置uni-router的路由页面                ROUTES: JSON.stringify(tfPages.routes)            })        ]    },    devServer: {        proxy: {            '/api': {                // target: "http://10.19.193.135:8870/ssyth",                target: 'http://www.okzyw.com',                changeOrigin: true, // 是否跨域                pathRewrite: {                    '^/api': ''                }            },            '/foo': {                // target: "http://10.19.193.135:8870/ssyth",                target: 'https://api.apiopen.top',                changeOrigin: true, // 是否跨域                pathRewrite: {                    '^/foo': ''                }            },            '/db': {                // target: "http://10.19.193.135:8870/ssyth",                target: 'https://movie.douban.com/',                changeOrigin: true, // 是否跨域                pathRewrite: {                    '^/db': ''                }            }        },    },    chainWebpack: config => {        config.resolve.alias            .set('@', resolve('src'))            .set('cn', resolve('src/components/common'))            .set('mioJs', resolve('src/common/js'))            .set('json', resolve('src/static/mockJson'))    }}

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wflynn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值