问题记录

作者: 勤能补拙的笨小孩 | 来源:发表于2019-10-11 22:44 被阅读0次

    1、vue生命周期:

        beforCreate   created   创建前、创建后
        beforMount  mounted   挂载前、挂载后
        beforUpdate  updated  数据更新前、更新后
        beforDestroy  destroyed  组件终止前、终止后  (一般用于关闭定时器)
    

    2、返回页面保留原页面数据的方法

        keep-alive标签包裹,可以理解为将整个组件进行缓存
    

    3、父子组件传值

        props  doen ,  $emit  up
    

    4、用过哪些vue框架

        Vant  uni-app
    

    5、用过哪些vue插件

        Vuex
        router:路由管理器
        Vant:UI
        axios:接口请求,数据交互
        qs:将post数据对象序列化成URL的形式
        md5:摘要认证加密
        base64:数据加密
        Vconsole:移动端控制台
    

    6、vue项目中遇到哪些问题,最终怎么解决的?

        问题1:axios  post数据格式
        解决:qs.stringify(data)
    
        问题2:移动端打印信息看不到
        解决:vconsole
    
        问题6:vue数据对象的属性更新后页面不渲染
        解决:待研究
    
        问题7:vue定时器
        解决:待复习
    
        问题8:不同页面之间的标题
        解决:
    
        问题9:微信静默授权设置欢迎页返回问题
        解决:待填
    

    7、vuex数据流:https://vuex.vuejs.org/zh/

    尚需学习

    8、webpack打包部署

    尚需学习

    9、es6新属性

    解构赋值
    箭头函数
    声明变量let const
    模板字符串
    给函数的参数设置默认值
    import 和 export
    Promise

    10、有几种解决跨域的方法

    尚需学习

    11、实现一个左中右、三栏布局,左右固定宽度,中间自适应

    六种实现方法

    12、实现字符串split方法

    String.prototype.mySplit = function(sqrt){
      var result = [];
      var a = 0;
      var b = 0;
      for(var i = 0;i<this.length;i++){
          if(this[i]==sqrt||i==this.length){
              result[b]='';
              for(var j = a;j<i;j++){
                  result[b]+=this[j];
              }
              b++;
              a=i+1; 
          }
      }
      return result;
    }
    
    

    13、防抖和节流,原理、差别以及实现方式

    防抖:就是指触发事件后在 n 秒内函数只能执行一次,如果在 n 秒内又触发了事件,则会重新计算函数执行时间。
    节流:就是指连续触发事件但是在 n 秒中只执行一次函数。

    实现:仍需学习

    差别:

    防抖: 触发高频事件后 n 秒内函数只会执行一次,如果 n 秒内高频事件再次被触发,则重新计算时间;
    思路: 每次触发事件时都取消之前的延时调用方法:

    节流: 高频事件触发,但在 n 秒内只会执行一次,所以节流会稀释函数的执行频率
    思路:每次触发事件时都判断当前是否有等待执行的延时函数。>

    14、js深拷贝方法实现

    js深拷贝、浅拷贝

    15、js继承的实现

    明天继续学习

    16、vue双向数据绑定的实现及底层原理

    我本来以为这就是一个v-on:click和value的简单实现,没想到是一个大命题,这个要花时间好好研究一下。

    17、代码运行的结果

    const o1 = {
      text : ' o1',
      fn : function(){
        return this.text
      }
    }
    
    const o2 = {
      text : 'o2',
      fn : function(){
        return o1.fn()
      }
    }
    
    const o3 = {
      text : 'o3',
      fn : function(){
        var fn = o1.fn;
        return fn()
      }
    }
    
    console.log(o1.fn());    //o1
    console.log(o2.fn());    //o1      ???
    console.log(o3.fn());    //undefined
    

    18、代码运行的结果

    setTimeout(function(){
      console.log(1);
    },0)
    //知识点:定时器时间设置为0的意思是,有空的话尽早执行
    
    new Promise ( (resolve,reject) = >{
      console.log(2)
      for(var i=0;i<1000;i++){
        i==999&&resolve()
      }
      console.log(3)
    }).then(res = >{
      console.log(4);
    })
    //2
    //
    //
    //1
    

    19、怎么判断两个对象是否相等(这个看到一个小伙伴写得很好)

    https://www.jianshu.com/p/90ed8b728975

    20、怎么判断一个字符串 'aaccv' 内哪个字母重复次数最多

    21、原生js(关于直播)

    22、重绘、重塑

    23、伪类、伪元素

    伪类:

        :hover          //鼠标移动到链接上
        :active          //选定的链接
        :link            //未访问的链接 
        :visited        //已访问的链接
    

    伪元素:伪元素会创建一个抽象的伪元素,这个元素不是DOM中的真实元素,但是会存在于最终的渲染树中,我们可以为其添加样式。可以分为排版伪元素、突出显示伪元素、树中伪元素三类。

        待补充
    

    24、es6新特性

    模板字符串
    模块化
    解构赋值
    函数参数设置默认值
    生命方式
    primise函数

    25、grid布局

    26、移动端1px问题

    利用 :after 或者 :befor 的transform : 0.5;border:1px solid #000;来处理,具体代码需继续补充

    27、公用组件存储数据

    28、兄弟组件传递数据

    29、盒模式

        box-sizing : content;            //不知道叫什么模式
        box-sizing : border-box;      //怪异盒模式
    

    差别:padding和border包含在内

    相关文章

      网友评论

        本文标题:问题记录

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