垃圾小结

186 阅读1分钟

1、多个异步需要顺序处理 promise的用法

getData() {
      return new Promise((resolve, rej) => {
        resolve(this.classOne());
      })
        .then(result => {
          return new Promise((resolve, reject) => {
            resolve(this.classTwo());
          });
        })
        .then(result => {
          return new Promise((res, rej) => {
            res(this.goodsList());
          });
        });
    }

2、一块区域设置几行文本 超出'''显示

 display: -webkit-box;
      overflow: hidden;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;

3、头像修改 (用form表单上传)

var BASE_URL = 'https://zm.h9e.net/api/';

export function FILE(url, params) {
    return $http.post(url, params, {
        headers: {
            'Content-Type': 'multipart/form-data'
        }
    })
}

 // 头像修改
    myTouxiang:(params)=>{
        return FILE('my/touxiang',params)
    },
    
 //头像修改接口
    async myImg(file) {
      let params = new FormData();
      params.append("file", file);
      params.append("user_id", localStorage.getItem("user_id"));
      params.append("token", localStorage.getItem("token"));
      let myImg = await this.service.my.myTouxiang(params);
      console.log(myImg);
    },

4、 验证

### 手机号码验证
if (!/^[1][3456789]\d{9}$/.test(this.phone)) {
        toast({
          text: "请输入正确的手机号",
          time: 1000
        });
        return false;
      }
###  6位数密码验证
if (!/^\d{6}$/.test(this.password)) {
          toast({
            text: "支付密码必须设置6位数的数字",
            time: 1000
          });
        }

5、获取价格

  //获取价格
    getPrice() {
      this.Totalprice = 0;
      this.shopList.map(i => {
        if (i.ischecked == true) {
          this.Totalprice = this.Totalprice + i.price * i.number;
        }
      });
      return this.Totalprice;
    },

6、时间戳 格化式

1 格化式 日期 为 xx-xx-xx

 getTime(date) {
      let year = date.getFullYear();
      let month = ("00" + (date.getMonth() + 1)).slice(-2);
      let day = ("00" + date.getDate()).slice(-2);
      return year + "-" + month + "-" + day;
    },

点击禁用

pointer-events: none;

7、递归遍历

function reFUN(params) {

 let res = []
 params.forEach((val) => {
   if (val.children) {
     res.push(...reFUN(val.children))
   }
   else {
     res.push(val)
   }
 })
 return res
}
console.log(reFUN(datax))

8、无用的数据分页

let newData = []
function transData(page) {
  mockData.forEach((val, index) => {
    if (index % 5 == 0 && index != 0) {
      let params = {}
      if (page) {
        params.page = page
      }
      else {
        params.page = 1
      }
      params.children = mockData.splice(index - 5, 5)
      newData.push(params)
      return transData(params.page + 1)
    }
    else if (index == mockData.length - 1) {
      let params = {}
      if (page) {
        params.page = page
      }
      else {
        params.page = 1
      }
      params.children = mockData
      newData.push(params)
    }
  })
}
transData()
console.log(newData)