封装自定义指令简单说明

  Vue.directive("指令名", {

              //回调函数: 会在当前标有这个自定义指令的元素被添加到页面上之后,自动调用该回调函数。

              //当自动调用回调函数时,会自动将当前带有自定义指令的元素对象传入inserted函数内

              inserted(当前dom元素对象){

                     //对当前DOM元素对象执行一些初始化操作

              }

         })

  如果指令名包含多个英文单词,比如my focus,应该-分割多个英文单词,比如my-focus,不应该用驼峰命名

例:自动获取焦点

  <div id="app">

      <input type="text" v-my-focus><button>百度一下</button>

  </div>

  <script>

    //向vue大家庭中添加一个名为my-focus的自定义指令

    Vue.directive("my-focus",{

        //希望当带有这个指令的元素被添加到页面上时,自动调用inserted函数

        inserted(domElem){

            //在函数内,让当前DOM元素自动获得焦点

            domElem.focus();

        }

    })

    new Vue({

        el:"#app"

    })

  </script>

补充: 命名规范

  如果这个名字将来是在HTML中使用,如果包含多个单词,都用-分割多个单词,而不要用驼峰命名

  因为HTML默认不区分大小写的!

  如果这个名字是js中的变量名或对象名,则如果包含多个单词,应该用驼峰命名。因为js中不能随便写 -,与减法的减号冲突!

posted @ 2020-12-24 21:11  犀利的小鱼  阅读(200)  评论(0)    收藏  举报