、这段代码什么意思啊?insert的参数是固定的吗?


   focus: {
      inserted: function(el, { modifiers: { noKeyboard } }) {
        try {
          const tagName = el.tagName;
          if (tagName !== 'INPUT') {
            const child = el.children[0];
            if (child && child.tagName === 'INPUT') {
              el = child;
            }
          }
          el.focus();
          if (noKeyboard) {
            el.setAttribute('readonly', 'readonly');
            var timer = null;
            timer = setTimeout(() => {
              el.removeAttribute('readonly');
              clearTimeout(timer);
            }, 100);
          }
        } catch (error) {
          throw new Error(error);
        }
      }
    },

el是一个dom元素,然后进来先判断el是不是input表单标签,如果不是,就判断它的children[0]元素是不是input标签,是的话将el指向它的子元素这个input标签,然后让el聚焦,如果你传进来的noKeyboard是true,则给它设置0.1s的只读,就是不允许编辑,0.1s后解除只读状态。

vue里面的自定义指令吧这是,inserted是内部提供的方法,固定的。
https://cn.vuejs.org/v2/guide/custom-directive.html