JS(ES6)如何优雅的把后台JSON数据存到前端

36 篇文章 0 订阅
5 篇文章 1 订阅
async fetchData (id) {
      const params = { idNumber:id } // 构造parms
      const res = await this.$http(xxxxxxxxxxxxxxxxxxxxxxxxx) // 走接口,存到res
      const {data, success, message} = res.data // 解构出res中的数据,后面用
      if (!success) {		// 错误情况处理,错了就return出去,剩下的都是正确的情况了
        this.$message({message: message, type: 'warning'})
        return
      }
      // 注意下面的写法,下面的分号放开头是有意义的,不是写错了!至于为啥要放开头个分号。
      // 首先我们要用解构语法,解构语法等号前是对应模式
      //(详见阮一峰ES6文中的一句话:“这实际上说明,对象的解构赋值是下面形式的简写(参见《对象的扩展》一章)。let { foo: foo, bar: bar } = { foo: 'aaa', bar: 'bbb' }”)
      //其次为了赋值给已经定义的变量,最前面不能有let,所以是大括号形式的对应模式语法为开头,这种大括号做开头的,会被浏览器解析成代码块,为了不让浏览器解析成代码块,加上圆括号
      //(详见阮一峰ES6文中的一句话:“上面代码的写法会报错,因为 JavaScript 引擎会将{x}理解成一个代码块,从而发生语法错误。只有不将大括号写在行首,避免 JavaScript 将其解释为代码块,才能解决这个问题。let x;({x} = {x: 1});”)
      // 但是圆括号会被处理成和上文不会换行,所以为了和上文换行,必须手动加个分号,一般是在上行的末尾,可是正常写都不加的大前提下,就加在下行开头了,记忆起来方便
      ;({ a: this.dataList.a, b: this.dataList.b} = data)
      console.log(this.dataList)
    },

研究了半天,没能与es6的三个点-扩展运算符… 一起用,没想到怎么能一起使用,如果能一起用,会更优雅,欢迎大佬来指出如何用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值