前端冷门知识点

作者: 小遁哥 | 来源:发表于2021-02-18 10:23 被阅读0次

    document.referrer 遇到 H5 History

    在一个Vue项目中,我需要获取上一个页面地址做判断,从而为一个埋点事件传值
    当使用this.$router.push跳转后document.referrer的总是为""
    后来发现通过创建a标签再模拟点击的方式就可以正常获取值
    本质上还是this.$router.push是基于H5 History实现的

    回到之前的需求,对于业内跳转可以通过window.sessionStorage存储值,消费完删除就可以了

    我第一次以为是document.referrer不行,尝试有没有其它方式,卒,后来察觉可能和this.$router.push有关,尝试用a标签模拟点击,再想到和H5 History有关

    不过,在已有的埋点SDK中,尽管是this.$router.push跳转document.referrer还是获取到了值,我去观察下实现。

    typeof

    偶然发现 typeof adsdassdasadsad 会输出undefined,而不是报错,要知道 adsdassdasadsad是没有声明的,不过typeof adsdassda;sadsad就会报错了,因为;号是一个语句的结束, 执行sadsad就会报

    在做nuxt的项目中,服务器端渲染的时候,想用获取客户端请求携带的cookie,用于鉴权,当时是用js-cookie读取,这是用在客户端的,肯定是不行的,但是它不报错就很奇怪,发现源码里做了判断,类似于

    if(typeof document === "undefined"){
      return;
    }
    

    H5键盘"前往" 改成"发送"

    默认


    使用enterkeyhint="send"

    <input enterkeyhint="send" />
    

    更多类型: https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/enterKeyHint
    兼容性: https://caniuse.com/?search=HTML%20enterkeyhint

    另外H5想要判断键盘被拉起收回是不方便的,可以改成输入框有值的时候再做一些UI上的改变,比如出现"发送"按钮

    vue 组件自动导入

    2020 - 03 - 19
    <template>直接写组件是可以自动导入的,还会放进components里,哇哦。

    本文将持续更新

    关注专题 前端便利店 https://www.jianshu.com/c/c3f77a86d9a5 ,帮您省时省力!

    相关文章

      网友评论

        本文标题:前端冷门知识点

        本文链接:https://www.haomeiwen.com/subject/uodgxltx.html