/* 
element focus
*/
export default {
    bind: function (el, { value }, vnode) {
        if (value) {
            const { focus } = value;
            if (focus) {
                vnode.context.$nextTick(() => {
                    el.focus();
                });
            }
        }
    },
    update: function (el, { value }) {
        if (value) {
            const { focus } = value;
            if (focus) {
                el.focus();
            }
        }
    },
};

@@ -113,32 +113,40 @@
    const %7B focus
+, select
  %7D = value;%0A    
@@ -145,78 +145,160 @@
 ue;%0A
-            if (focus) %7B%0A                vnode.context.$nextTick(() =%3E
+%0A            vnode.context.$nextTick(() =%3E %7B%0A                if (focus) %7B%0A                    el.focus();%0A                %7D%0A%0A                if (select)
  %7B%0A 
@@ -311,37 +311,38 @@
              el.
-focus
+select
 ();%0A            
@@ -346,18 +346,16 @@
        %7D
-);
 %0A       
@@ -352,32 +352,34 @@
  %7D%0A            %7D
+);
 %0A        %7D%0A    %7D
@@ -465,16 +465,24 @@
  %7B focus
+, select
  %7D = val
@@ -543,32 +543,102 @@
 );%0A            %7D
+%0A%0A            if (select) %7B%0A                el.select();%0A            %7D
 %0A        %7D%0A    %7D

Update focus.js