• 如何配置vue-cli4.0


    这是一期主要分享vue-cli4.0配置

    新建一个项目,最令人为难的是配置环境。拿vue来说,创建项目很简单,跟着文档走即可,但是要知道配置本地,测试,生产环境,以及反向代理等等,如果对于一个对vue构建不是特别了解,或者对webpack不是特别了解的人来说,真是很为难。

    创建项目不再赘述,直接看如何配置环境。

    配置反向代理

    反向代理其实就是在本地为了解决跨域问题,将本地启动的比如localhost:8080代理成测试环境,发送给后端就不会出现跨域的问题。

    vue-cli2.0以及以前,都是在创建项目的时候,会自动创建一个文件夹build,里面有各个环境配置的文件。vue-cli3.0及之后的版本,省去了这个文件夹,让这个项目结构更加清晰。

    我们需要配置时,需要手动在最外层,即跟public文件夹同一级,创建vue.config.js文件夹,用来放所有配置项。

    我所配置的反向代理在devServer里配置。

    module.exports={
        assetsDir:'static',
        publicPath:'./',
        devServer: {
            host: 'localhost',
            port: 8080,
            proxy: {
                '/mall': {
                target: process.env.VUE_APP_BASE_URL_MALL,
                changeOrigin: true,
                ws: true,
                pathRewrite: {
                    '^/mall': ''
                }
              },
            },
        },
    }
    

    如上的代码将/mall代理成target里面的环境(target环境,下面会做详细描述),需要注意,反向代理只是针对本地,测试和正式环境不需要代理,在做发请求封装的时候需注意。

    配置环境

    看下package.json中的scripts项,有几个环境,可以直接npm run对应的环境即可。

    如果想配置其他名称或者其他的环境,可以在vue.config.js同一级添加

    开发环境env.development

    测试环境env.stage

    正式环境env.production

    在对应的环境文件里,配置如下

    NODE_ENV=stage
    VUE_APP_BASE_URL_MALL='http://test.cn'
    

    其中NODE_ENV配置的是环境,可以在后期根据环境进行区分本地/测试/正式环境

    VUE_APP_是定义相对应的环境变量,可以在反向代理和封装请求的时候使用。

    以下是我对发请求进行的封装

    import axios from 'axios'
    
    export default function http({url,method='GET',data=null}) {
        return new Promise((resolve, reject) => {
            let wholeUrl=''
            // development:本地;stage:测试;production:正式 
            if(process.env.NODE_ENV=='development'){
                wholeUrl=`/mall${url}`
            }else {
                wholeUrl=`${process.env.VUE_APP_BASE_URL_MALL}${url}`
            }
            axios({url:wholeUrl,method,data}).then(res=>{
                resolve(res)
            }).catch(err=>{
                reject(err)
            })
        });
    }
    

    在以后不管是发正式还是发测试,均不用手动修改环境,很便利。

  • 相关阅读:
    sencha touch 扩展篇之将sencha touch打包成安装程序(上)- 使用sencha cmd打包安装程序
    sencha touch 扩展篇之使用sass自定义主题样式 (下)通过css修改官方组件样式以及自定义图标
    一个不错的android组件的网站
    sencha touch 扩展篇之使用sass自定义主题样式 (上)使用官方的api修改主题样式
    sencha touch 入门系列 (九) sencha touch 布局layout
    面试题总结
    国外接活网站Elance, Freelancer和ScriptLance的介绍和对比
    sencha touch 入门系列 扩展篇之sencha touch 项目打包压缩
    Android Design Support Library——Navigation View
    设计模式——命令模式
  • 原文地址:https://www.cnblogs.com/zdping/p/12015561.html
Copyright © 2020-2023  润新知