20240418项目总结

  1. vue的route会把query里的+替换为空号,所以如果有带+的参数,需要再替换回去
    code=route.query.code.replace(/\s/,'+');
    2.一个项目ajax有多个baseUrl,在封装成class,将baseUrl作为参数传入生成实例导出
    if (process.env.NODE_ENV == 'development') { // 测试环境配置
    baseUrl = '/api';
    localBaseUrl = '/local';
    } else { // 生产环境配置
    baseUrl = BASEURL;
    localBaseUrl = LOCALBASEURL;
    }
    class ApiClient {
    constructor (url){
    this.baseUrl = url;
    this.service = axios.create({
    baseURL: this.baseUrl,
    timeout: 6000,
    heders: {
    'Content-Type': 'application/json;charset=utf-8'
    }
    });
    this.service.interceptors.request.use() //
    this.service.interceptors.response.use
    }
    requestCreater (url, method = 'get', options = {}) {
    return data => {
    return this.service({
    url,
    data,
    method,
    ...options
    });
    };
    }
    }
    //实例化
    const requestInstance = new ApiClient(baseUrl);
    const localRequestInstance = new ApiClient(localBaseUrl);

export {
requestInstance,
localRequestInstance
};
//这里为什么不直接导出const requestCreater= new ApiClient(baseUrl).requestCreater;?这样导出的话this就丢失了
//调用时记得实例的静态方法
requestInstance.requestCreater ()
localRequestInstance.requestCreater()
3.vue项目一直出现 sockjs-node/info?t=XX的解决办法


image.png

错误原因
sockjs-node 是一个JavaScript库,提供跨浏览器JavaScript的API,创建了一个低延迟、全双工的浏览器和web服务器之间通信通道。

服务端:sockjs-node(https://github.com/sockjs/sockjs-node

客户端:sockjs-clien(https://github.com/sockjs/sockjs-client

如果你的项目没有用到 sockjs,vuecli3 运行 npm run serve 之后 network 里面一直调研一个接口:http://localhost:8080/sockjs-node/info?t=

解决办法:
找到/node_modules/sockjs-client/dist/sockjs.js
ctrl+f查找self.xhr.send(payload),注释掉


image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容