摘要:我到現(xiàn)在也沒有搞明白這是為什么,猜測了一下是存才一個全局變量,當我們第一次使獲得焦點以后改變了這個預設變量的值,在失去焦點的時候并沒有將這個值重置,所以導致了后面的問題。廢話不多說,下面是當同時使用和的時候的解決方案。
在制作項目的時候遇到一個需求,點擊一個按鈕彈出一個input輸入框,并讓輸入框獲得焦點,項目中引用了element-ui
在網(wǎng)上查找了很多方法,
但是在實際使用中發(fā)現(xiàn)了一個問題
無論是使用$ref獲取input元素然后使用focus方法
還是使用餓了么組件自帶的autoFocus
都只有在第一次點擊按鈕的時候可以讓Input獲得焦點,在不刷新頁面的情況下,第二次以后的按鈕點擊都不會讓Input獲得焦點。我到現(xiàn)在也沒有搞明白這是為什么,猜測了一下是存才一個全局變量,當我們第一次使Input獲得焦點以后改變了這個預設變量的值,在Input失去焦點的時候并沒有將這個值重置,所以導致了后面的問題。
廢話不多說,
Vue本身提供了自定義指令的方法
// 注冊一個全局自定義指令 `v-focus` Vue.directive("focus", function (el) { el.focus() })
這樣使我們在組件中可以自用的調用v-focus方法,給他綁定定義布爾變量來控制元素是否獲得焦點
但是這里要注意的是組件
所以我們要在
在自定義指令中獲取組件下通過querySelector()方法獲取input元素
Vue.directive("focus", function (el) { el.querySelector("input").focus() })
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://systransis.cn/yun/93957.html
摘要:案例持續(xù)觸發(fā)事件時,并不立即執(zhí)行函數(shù),當毫秒內沒有觸發(fā)事件時,才會延時觸發(fā)一次函數(shù)。也以函數(shù)形式暴露普通插槽。這樣的場景組件用函數(shù)式組件是非常方便的。相關閱讀函數(shù)式組件自定義指令前言 有echarts使用經驗的同學可能遇到過這樣的場景,在window.onresize事件回調里觸發(fā)echartsBox.resize()方法來達到重繪的目的,resize事件是連續(xù)觸發(fā)的這意味著echarts...
摘要:小白的全棧開發(fā)一簡介從新手的角度對有了解,對和有了解。希望能夠幫助和我一樣是全棧小白的你看過很多關于怎么搭建全棧的文章,部分可能有借鑒。因為要自己獨立完成,所以開始自己的全棧之旅。分享出來我的全棧經歷,并記錄我的畢設進度逃。 小白的全棧開發(fā) 一 簡介 從新手的角度(對vue有了解,對Koa和Express有了解。)從0開始搭建一個通過RESTful API提供數(shù)據(jù),vue組成的單頁面的...
摘要:的中使用包裹想要插入的,或者等元素,綁定一個的數(shù)組對象,在或者等元素使用,為該在綁定數(shù)組對象的對應屬性這樣就可以實現(xiàn)每一行的數(shù)據(jù)分別存儲在綁定數(shù)組對象的不同下標數(shù)組中。新增一列時,只需要讓綁定數(shù)組對象一個與先前屬性一致的空對象進去。element的table中使用 包裹想要插入的input,或者select等HTML元素,綁定一個的數(shù)組對象,在input或者select等HTML元...
摘要:基于封裝的表單渲染器,完整繼承了的屬性定義,并進行了簡單擴展,從而用戶能夠通過使用一段預設的數(shù)據(jù)渲染出一個完整的表單。設置為可禁用所有原子表單。獲取當前表單的值。 基于 element-ui 封裝的表單渲染器,完整繼承了 element 的屬性定義,并進行了簡單擴展,從而用戶能夠通過使用一段預設的數(shù)據(jù)渲染出一個完整的 element 表單。 演示地址 項目地址 Usage // S...
閱讀 1055·2021-09-13 10:29
閱讀 3403·2019-08-29 18:31
閱讀 2651·2019-08-29 11:15
閱讀 3025·2019-08-26 13:25
閱讀 1384·2019-08-26 12:00
閱讀 2329·2019-08-26 11:41
閱讀 3430·2019-08-26 10:31
閱讀 1501·2019-08-26 10:25