V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hm20062006ok
V2EX  ›  Vue.js

前端如何对网络请求返回的数据进行“预处理”?

  •  
  •   hm20062006ok · 2021-06-02 13:20:46 +08:00 · 2190 次点击
    这是一个创建于 1289 天前的主题,其中的信息可能已经有所发展或是发生改变。

    当前端拿到请求返回的数据之后需要进行一下处理,数据才能用于通用组件。 比如给 list 中的 item 添加一个属性、 给 item 的某个属性改个键名等等。 这种情况有什么最佳实践,或者说好的范式吗? 还是只能一点点扣

    5 条回复    2021-06-03 16:57:40 +08:00
    joesonw
        1
    joesonw  
       2021-06-02 13:26:47 +08:00
    要么 http 请求库处拦截(axios 类). 要么 serviceWorker 全局拦截.
    dfkjgklfdjg
        2
    dfkjgklfdjg  
       2021-06-02 13:31:00 +08:00
    axios 响应拦截器,或者 list 页面用 mixins 混入
    John60676
        3
    John60676  
       2021-06-02 13:49:25 +08:00
    vue-request ⚡️ 一个能轻松帮你管理请求状态(支持 SWR,轮询,错误重试,缓存,分页等)的 Vue 3 请求库

    仓库地址: https://github.com/AttoJS/vue-request
    官网地址: https://www.attojs.org

    看看能不能满足你的要求
    JaaaaackZheng
        4
    JaaaaackZheng  
       2021-06-02 14:00:01 +08:00
    BFF?
    KisekiRemi
        5
    KisekiRemi  
       2021-06-03 16:57:40 +08:00
    // axios 配置
    let axiosConfig = {
    // todo
    }

    let instanceTmp = axios.create(axiosConfig);

    // http 请求拦截器
    instanceTmp.interceptors.request.use(
    config => {
    // todo
    return config
    }
    err => {
    // todo
    return err
    }
    )

    // http 相应拦截器
    instanceTmp.interceptors.response.use(
    response => {
    // todo
    return response
    }
    err => {
    // todo
    return err
    }
    )
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1376 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 17:11 · PVG 01:11 · LAX 09:11 · JFK 12:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.