美文网首页
Vue 问答

Vue 问答

作者: xingkong_s | 来源:发表于2019-07-05 14:26 被阅读0次

    1. v-if 和 v-show 的区别。

    参考答案

    • v-if 让元素 出现/不出现 在页面
      v-show 元素 一直 在页面中 添加style display:...
    • 当v-if 为 true 的时候 元素 created
      当v-if 为 false 的时候 元素 destroy
      v-show 只改style 不去触发 生命周期的钩子

    1. 依赖注入怎么使用

    provide 选项应该是一个对象 或 返回一个对象的函数

     provide() {
                return {
                    xxx: "yyy"
                };
            }
    

    inject 选项 一个字符串数组 或 一个对象

     inject: ["xxx"],
     methods:{
        a(){
            this.xxx
        }
     }
    

    1. mixins 怎么使用

    示例组件

    const xxx  = {
      name:"Loo",
      data(){ return {a:''}},
      mounted(){},
      methods:{
        foo(){}
      }
    }
    export default xxx
    

    mixins 选项接受一个混入对象的数组

    import XXX from "xxx";
    new Vue({
      name:"Loo1",
      mounted() { console.log(2) },
      mixins: [XXX]
    })
    

    1. 自定义指令

    export default {
      inserted: function (el) {
          el.focus()
      },
      bind:function(el,binding,vnode,oldVnode){
        console.log(el,binding.value)
      },
      componentUpdated(){},
      unbind(){}
    }
    

    组件接受一个 directives 的选项

    import XXX from "xxx"
    new Vue({
      name:"Loo",
      directives: {XXX},
      methods:{}
    })
    

    使用

    <template>
       <div v-xxx>
       </div>
    </template>
    

    1. $attrs

    当一个组件没有声明任何 prop, vm.$attrs会包含所有父作用域的绑定 (classstyle 除外),并且可以通过 v-bind="$attrs" 传入内部组件

    相关文章

      网友评论

          本文标题:Vue 问答

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