基础问题

197 阅读1分钟

audio无法自动播放问题

解释:浏览器本身是不允许用户在未交互之前就进行声音的自动播放。只能是等到交互完成之后再进行自动播放;或则是支持静音自动播放的

window.onload = function() {
        let demo = window.setInterval(() =>{
            let audio = document.getElementById('audioId')
         if(audio.paused) {
            audio.paused = false
            audio.play()
        }
    },100)
}

埋点问题

埋点的方式:

  1. 三方
  2. 手动(实际上还是通过一个接口来将用户的点击数据、访问数据等提交给服务端,然后对获取到的数据进行分析) 通常使用gif来进行埋地:
  3. 上报数据的时候并不会阻塞其他事件须髯
  4. 防止跨域
  5. 相比于其他的体积要小很多

uv: 访问者每天记录一次

IP: 用户ip地址,(uvip的不同,一台电脑和两个账户的区别)

PV: 页面点击量或是浏览量,访问累计次数

VV: 一天内访问网站的次数,访问累计次数

三方js

  • 录音recorder-js

解决mac端口被占用的问题

    // 查询端口对应的进程
    sudo lsof -i tcp:端口号
    // 杀死进程
    sudo kill PID

element-ui el-upload 修改文件名称

beforeAvatarUpload(file: any) {
    ...
    const timestamp = new Date().getTime();
    // 生成一个随机字符串
    const randomString = Math.random().toString(36).substring(2, 8);
    // 使用时间戳和随机字符串生成文件名
    let fileName = `${timestamp}_${randomString}`;
    fileName = fileName + "." + fileSuffix;
    const copyFile = new File([file], fileName)
    const formdata = new FormData()
    formdata.append('file', copyFile)
    axios.post(this.action,formdata).then(res =>{
        this.handlSuccess(res.data) //上传成功只有,执行成功事件
    })
    return false //设置false 阻止默认事件的发生
},